Package com.ericsson.otp.erlang

## Class OtpErlangFun

- java.lang.Object
- - com.ericsson.otp.erlang.OtpErlangObject
  - - com.ericsson.otp.erlang.OtpErlangFun

- All Implemented Interfaces:
    `java.io.Serializable`, `java.lang.Cloneable`

      public class OtpErlangFun
      extends OtpErlangObject

  See Also:
    Serialized Form

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class com.ericsson.otp.erlang.OtpErlangObject

      `OtpErlangObject.Hash`

  - ### Field Summary

    - ### Fields inherited from class com.ericsson.otp.erlang.OtpErlangObject

      `hashCodeValue`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `OtpErlangFun​(OtpErlangPid pid, java.lang.String module, int arity, byte[] md5, int index, long old_index, long uniq, OtpErlangObject[] freeVars)` |
    `OtpErlangFun​(OtpErlangPid pid, java.lang.String module, long index, long uniq, OtpErlangObject[] freeVars)` |
    `OtpErlangFun​(OtpInputStream buf)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected int` | `doHashCode()` |
    `void` | `encode​(OtpOutputStream buf)` | Convert the object according to the rules of the Erlang external format.
    `boolean` | `equals​(java.lang.Object o)` | Determine if two Erlang objects are equal.
    `java.lang.String` | `toString()` |

    - ### Methods inherited from class com.ericsson.otp.erlang.OtpErlangObject

      `bind, clone, decode, hashCode, match`

    - ### Methods inherited from class java.lang.Object

      `finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### OtpErlangFun

          public OtpErlangFun​(OtpInputStream buf)
                       throws OtpErlangDecodeException

      Throws:
        `OtpErlangDecodeException`

    - #### OtpErlangFun

          public OtpErlangFun​(OtpErlangPid pid,
                              java.lang.String module,
                              long index,
                              long uniq,
                              OtpErlangObject[] freeVars)

    - #### OtpErlangFun

          public OtpErlangFun​(OtpErlangPid pid,
                              java.lang.String module,
                              int arity,
                              byte[] md5,
                              int index,
                              long old_index,
                              long uniq,
                              OtpErlangObject[] freeVars)

  - ### Method Detail

    - #### encode

          public void encode​(OtpOutputStream buf)

      Description copied from class: `OtpErlangObject`
      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.
      Specified by:
        `encode` in class `OtpErlangObject`
      Parameters:
        `buf` - an output stream to which the encoded term should be written.

    - #### equals

          public boolean equals​(java.lang.Object o)

      Description copied from class: `OtpErlangObject`
      Determine if two Erlang objects are equal. In general, Erlang objects are equal if the components they consist of are equal.
      Specified by:
        `equals` in class `OtpErlangObject`
      Parameters:
        `o` - the object to compare to.
      Returns:
        true if the objects are identical.

    - #### doHashCode

          protected int doHashCode()

      Overrides:
        `doHashCode` in class `OtpErlangObject`

    - #### toString

          public java.lang.String toString()

      Specified by:
        `toString` in class `OtpErlangObject`
      Returns:
        the printable representation of the object. This is usually similar to the representation used by Erlang for the same type of object.