Class OtpErlangAtom

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable
    Direct Known Subclasses:
    OtpErlangBoolean

    public class OtpErlangAtom
    extends OtpErlangObject
    Provides a Java representation of Erlang atoms. Atoms can be created from strings whose length is not more than maxAtomLength characters.
    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static int maxAtomLength
      The maximum allowed length of an atom, in characters
    • Constructor Summary

      Constructors 
      Constructor Description
      OtpErlangAtom​(boolean t)
      Create an atom whose value is "true" or "false".
      OtpErlangAtom​(OtpInputStream buf)
      Create an atom from a stream containing an atom encoded in Erlang external format.
      OtpErlangAtom​(java.lang.String atom)
      Create an atom from the given string.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.String atomValue()
      Get the actual string contained in this object.
      boolean booleanValue()
      The boolean value of this atom.
      protected int doHashCode()  
      void encode​(OtpOutputStream buf)
      Convert this atom to the equivalent Erlang external representation.
      boolean equals​(java.lang.Object o)
      Determine if two atoms are equal.
      java.lang.String toString()
      Get the printname of the atom represented by this object.
      • Methods inherited from class java.lang.Object

        finalize, getClass, notify, notifyAll, wait, wait, wait
    • Field Detail

      • maxAtomLength

        public static final int maxAtomLength
        The maximum allowed length of an atom, in characters
        See Also:
        Constant Field Values
    • Constructor Detail

      • OtpErlangAtom

        public OtpErlangAtom​(java.lang.String atom)
        Create an atom from the given string.
        Parameters:
        atom - the string to create the atom from.
        Throws:
        java.lang.IllegalArgumentException - if the string is null or contains more than maxAtomLength characters.
      • OtpErlangAtom

        public OtpErlangAtom​(OtpInputStream buf)
                      throws OtpErlangDecodeException
        Create an atom from a stream containing an atom encoded in Erlang external format.
        Parameters:
        buf - the stream containing the encoded atom.
        Throws:
        OtpErlangDecodeException - if the buffer does not contain a valid external representation of an Erlang atom.
      • OtpErlangAtom

        public OtpErlangAtom​(boolean t)
        Create an atom whose value is "true" or "false".
    • Method Detail

      • atomValue

        public java.lang.String atomValue()
        Get the actual string contained in this object.
        Returns:
        the raw string contained in this object, without regard to Erlang quoting rules.
        See Also:
        toString()
      • booleanValue

        public boolean booleanValue()
        The boolean value of this atom.
        Returns:
        the value of this atom expressed as a boolean value. If the atom consists of the characters "true" (independent of case) the value will be true. For any other values, the value will be false.
      • toString

        public java.lang.String toString()
        Get the printname of the atom represented by this object. The difference between this method and {link #atomValue atomValue()} is that the printname is quoted and escaped where necessary, according to the Erlang rules for atom naming.
        Specified by:
        toString in class OtpErlangObject
        Returns:
        the printname representation of this atom object.
        See Also:
        atomValue()
      • equals

        public boolean equals​(java.lang.Object o)
        Determine if two atoms are equal.
        Specified by:
        equals in class OtpErlangObject
        Parameters:
        o - the other object to compare to.
        Returns:
        true if the atoms are equal, false otherwise.
      • encode

        public void encode​(OtpOutputStream buf)
        Convert this atom to the equivalent Erlang external representation.
        Specified by:
        encode in class OtpErlangObject
        Parameters:
        buf - an output stream to which the encoded atom should be written.