Class OtpErlangObject

    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      protected static class  OtpErlangObject.Hash  
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected int hashCodeValue  
    • Constructor Summary

      Constructors 
      Constructor Description
      OtpErlangObject()  
    • Field Detail

      • hashCodeValue

        protected int hashCodeValue
    • Constructor Detail

      • OtpErlangObject

        public OtpErlangObject()
    • Method Detail

      • toString

        public abstract java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
        Returns:
        the printable representation of the object. This is usually similar to the representation used by Erlang for the same type of object.
      • encode

        public abstract void encode​(OtpOutputStream buf)
        Convert the object according to the rules of the Erlang external format. This is mainly used for sending Erlang terms in messages, however it can also be used for storing terms to disk.
        Parameters:
        buf - an output stream to which the encoded term should be written.
      • decode

        public static OtpErlangObject decode​(OtpInputStream buf)
                                      throws OtpErlangDecodeException
        Read binary data in the Erlang external format, and produce a corresponding Erlang data type object. This method is normally used when Erlang terms are received in messages, however it can also be used for reading terms from disk.
        Parameters:
        buf - an input stream containing one or more encoded Erlang terms.
        Returns:
        an object representing one of the Erlang data types.
        Throws:
        OtpErlangDecodeException - if the stream does not contain a valid representation of an Erlang term.
      • equals

        public abstract boolean equals​(java.lang.Object o)
        Determine if two Erlang objects are equal. In general, Erlang objects are equal if the components they consist of are equal.
        Overrides:
        equals in class java.lang.Object
        Parameters:
        o - the object to compare to.
        Returns:
        true if the objects are identical.
      • match

        public <T> boolean match​(OtpErlangObject term,
                                 T binds)
        Perform match operation against given term.
        Parameters:
        term - the object to match
        binds - variable bindings
        Returns:
        true if match succeeded
      • bind

        public <T> OtpErlangObject bind​(T binds)
                                 throws OtpErlangException
        Make new Erlang term replacing variables with the respective values from bindings argument(s).
        Parameters:
        binds - variable bindings
        Returns:
        new term
        Throws:
        OtpErlangException
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • doHashCode

        protected int doHashCode()
      • clone

        public java.lang.Object clone()
        Overrides:
        clone in class java.lang.Object