## net.sf.saxon.instruct
Class UserFunctionParameter

    java.lang.Object
      net.sf.saxon.instruct.UserFunctionParameter

All Implemented Interfaces:
  Serializable, Binding

    public class UserFunctionParameter

extends Object
implements Binding, Serializable

Run-time object representing a formal argument to a user-defined function

See Also:
  Serialized Form

Constructor Summary
`UserFunctionParameter()`

Method Summary
`ValueRepresentation` `evaluateVariable(XPathContext context)` Evaluate the variable
`int` `getLocalSlotNumber()` If this is a local variable held on the local stack frame, return the corresponding slot number.
`int` `getReferenceCount()`
`SequenceType` `getRequiredType()`
`boolean` `isAssignable()` Test whether it is permitted to assign to the variable using the saxon:assign extension element.
`boolean` `isGlobal()` Indicate whether the binding is local or global.
`boolean` `isIndexedVariable()`
`void` `setIndexedVariable(boolean indexed)`
`void` `setReferenceCount(int count)`
`void` `setRequiredType(SequenceType type)`
`void` `setSlotNumber(int slot)`

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### UserFunctionParameter

    public UserFunctionParameter()

Method Detail

### isGlobal

    public final boolean isGlobal()

  Indicate whether the binding is local or global. A global binding is one that has a fixed value for the life of a query or transformation; any other binding is local.

  Specified by:
    `isGlobal` in interface `Binding`

### isAssignable

    public final boolean isAssignable()

  Test whether it is permitted to assign to the variable using the saxon:assign extension element. This will only be for an XSLT global variable where the extra attribute saxon:assignable="yes" is present.

  Specified by:
    `isAssignable` in interface `Binding`

### getLocalSlotNumber

    public int getLocalSlotNumber()

  If this is a local variable held on the local stack frame, return the corresponding slot number. In other cases, return -1.

  Specified by:
    `getLocalSlotNumber` in interface `Binding`

### setRequiredType

    public void setRequiredType(SequenceType type)

### getRequiredType

    public SequenceType getRequiredType()

### setReferenceCount

    public void setReferenceCount(int count)

### getReferenceCount

    public int getReferenceCount()

### setSlotNumber

    public void setSlotNumber(int slot)

### setIndexedVariable

    public void setIndexedVariable(boolean indexed)

### isIndexedVariable

    public boolean isIndexedVariable()

### evaluateVariable

    public ValueRepresentation evaluateVariable(XPathContext context)
                                         throws XPathException

  Description copied from interface: `Binding`
  Evaluate the variable

  Specified by:
    `evaluateVariable` in interface `Binding`
  Throws:
    `XPathException`

Copyright (C) Michael H. Kay. All rights reserved.