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