# Class FunctionMapperImpl.Function

java.lang.Object
org.apache.el.lang.FunctionMapperImpl.Function

All Implemented Interfaces:
  `Externalizable, Serializable`

Enclosing class:
  `FunctionMapperImpl`

public static class FunctionMapperImpl.Function extends Object implements Externalizable
Represents a mapped EL function with serialization support.

See Also:
  - Serialized Form

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected String`
  `localName`
  The local function name.
  `protected Method`
  `m`
  The resolved method, transient as it cannot be serialized directly.
  `protected String`
  `name`
  The method name.
  `protected String`
  `owner`
  The declaring class name of the method.
  `protected String`
  `prefix`
  The function namespace prefix.
  `protected String[]`
  `types`
  The parameter type names of the method.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `Function()`
  Default constructor required by Externalizable for deserialization.
  `Function(String prefix, String localName, Method m)`
  Creates a new function mapping for the given method.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `equals(Object obj)`
  `Method`
  `getMethod()`
  Gets the resolved method, lazily loading it from serialized data if needed.
  `int`
  `hashCode()`
  `void`
  `readExternal(ObjectInput in)`
  `void`
  `writeExternal(ObjectOutput out)`

  ### Methods inherited from class Object

  `clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

- ## Field Details

  - ### m

    protected transient Method m
    The resolved method, transient as it cannot be serialized directly.

  - ### owner

    protected String owner
    The declaring class name of the method.

  - ### name

    protected String name
    The method name.

  - ### types

    protected String[] types
    The parameter type names of the method.

  - ### prefix

    protected String prefix
    The function namespace prefix.

  - ### localName

    protected String localName
    The local function name.

- ## Constructor Details

  - ### Function

    public Function(String prefix, String localName, Method m)
    Creates a new function mapping for the given method.
    Parameters:
      `prefix` - The namespace prefix
      `localName` - The local function name
      `m` - The method to map

  - ### Function

    public Function()
    Default constructor required by Externalizable for deserialization.

- ## Method Details

  - ### writeExternal

    public void writeExternal(ObjectOutput out) throws IOException
    Specified by:
      `writeExternal` in interface `Externalizable`
    Throws:
      `IOException`

  - ### readExternal

    public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
    Specified by:
      `readExternal` in interface `Externalizable`
    Throws:
      `IOException`
      `ClassNotFoundException`

  - ### getMethod

    public Method getMethod()
    Gets the resolved method, lazily loading it from serialized data if needed.
    Returns:
      The resolved method, or `null` if it could not be resolved

  - ### equals

    public boolean equals(Object obj)
    Overrides:
      `equals` in class `Object`

  - ### hashCode

    public int hashCode()
    Overrides:
      `hashCode` in class `Object`