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
`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
`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.