Package org.codehaus.groovy.ast

# Class Parameter

java.lang.Object
org.codehaus.groovy.ast.ASTNode
org.codehaus.groovy.ast.AnnotatedNode
org.codehaus.groovy.ast.Parameter

All Implemented Interfaces:
  `GroovydocHolder<AnnotatedNode>`, `NodeMetaDataHandler`, `Variable`

public class Parameter extends AnnotatedNode implements Variable
Represents a parameter on a constructor or method call. The type name is optional - it defaults to java.lang.Object if unknown.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final Parameter[]`
  `EMPTY_ARRAY`

  ### Fields inherited from interface groovy.lang.groovydoc.GroovydocHolder

  `DOC_COMMENT`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `Parameter(ClassNode type, String name)`
  `Parameter(ClassNode type, String name, Expression defaultValue)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Expression`
  `getDefaultValue()`
  `Expression`
  `getInitialExpression()`
  Returns the expression used to initialize the variable or null of there is no initialization.
  `int`
  `getModifiers()`
  `String`
  `getName()`
  Returns the name of the variable.
  `ClassNode`
  `getOriginType()`
  Returns the type before wrapping primitives type of the variable.
  `ClassNode`
  `getType()`
  Returns the type of the variable.
  `boolean`
  `hasInitialExpression()`
  Returns true if there is an initialization expression.
  `boolean`
  `isClosureSharedVariable()`
  `boolean`
  `isDynamicTyped()`
  `boolean`
  `isImplicit()`
  `boolean`
  `isInStaticContext()`
  Returns true if this variable is used in a static context.
  `boolean`
  `isReceiver()`
  `void`
  `setClosureSharedVariable(boolean inClosure)`
  `void`
  `setInitialExpression(Expression init)`
  `void`
  `setInStaticContext(boolean inStaticContext)`
  `void`
  `setModifiers(int modifiers)`
  `void`
  `setOriginType(ClassNode cn)`
  `void`
  `setType(ClassNode type)`
  `String`
  `toString()`

  ### Methods inherited from class org.codehaus.groovy.ast.AnnotatedNode

  `addAnnotation, addAnnotation, addAnnotations, getAnnotations, getAnnotations, getDeclaringClass, getGroovydoc, getInstance, hasNoRealSourcePosition, isSynthetic, setDeclaringClass, setHasNoRealSourcePosition, setSynthetic`

  ### Methods inherited from class org.codehaus.groovy.ast.ASTNode

  `copyNodeMetaData, getColumnNumber, getLastColumnNumber, getLastLineNumber, getLineNumber, getMetaDataMap, getText, setColumnNumber, setLastColumnNumber, setLastLineNumber, setLineNumber, setMetaDataMap, setSourcePosition, visit`

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

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

  ### Methods inherited from interface org.codehaus.groovy.ast.NodeMetaDataHandler

  `copyNodeMetaData, getNodeMetaData, getNodeMetaData, getNodeMetaData, newMetaDataMap, putNodeMetaData, removeNodeMetaData, setNodeMetaData`

  ### Methods inherited from interface org.codehaus.groovy.ast.Variable

  `isFinal, isPrivate, isProtected, isPublic, isStatic, isVolatile`

- ## Field Details

  - ### EMPTY_ARRAY

    public static final Parameter[] EMPTY_ARRAY

- ## Constructor Details

  - ### Parameter

    public Parameter(ClassNode type, String name)

  - ### Parameter

    public Parameter(ClassNode type, String name, Expression defaultValue)

- ## Method Details

  - ### toString

    public String toString()
    Overrides:
      `toString` in class `Object`

  - ### getName

    public String getName()
    Description copied from interface: `Variable`
    Returns the name of the variable.
    Specified by:
      `getName` in interface `Variable`

  - ### getType

    public ClassNode getType()
    Description copied from interface: `Variable`
    Returns the type of the variable.
    Specified by:
      `getType` in interface `Variable`

  - ### setType

    public void setType(ClassNode type)

  - ### getDefaultValue

    public Expression getDefaultValue()

  - ### hasInitialExpression

    public boolean hasInitialExpression()
    Description copied from interface: `Variable`
    Returns true if there is an initialization expression.
    Specified by:
      `hasInitialExpression` in interface `Variable`

  - ### getInitialExpression

    public Expression getInitialExpression()
    Description copied from interface: `Variable`
    Returns the expression used to initialize the variable or null of there is no initialization.
    Specified by:
      `getInitialExpression` in interface `Variable`

  - ### setInitialExpression

    public void setInitialExpression(Expression init)

  - ### isInStaticContext

    public boolean isInStaticContext()
    Description copied from interface: `Variable`
    Returns true if this variable is used in a static context. A static context is any static initializer block, when this variable is declared as static or when this variable is used in a static method
    Specified by:
      `isInStaticContext` in interface `Variable`

  - ### setInStaticContext

    public void setInStaticContext(boolean inStaticContext)

  - ### isDynamicTyped

    public boolean isDynamicTyped()
    Specified by:
      `isDynamicTyped` in interface `Variable`

  - ### isClosureSharedVariable

    public boolean isClosureSharedVariable()
    Specified by:
      `isClosureSharedVariable` in interface `Variable`

  - ### setClosureSharedVariable

    public void setClosureSharedVariable(boolean inClosure)
    Specified by:
      `setClosureSharedVariable` in interface `Variable`

  - ### getModifiers

    public int getModifiers()
    Specified by:
      `getModifiers` in interface `Variable`

  - ### setModifiers

    public void setModifiers(int modifiers)

  - ### getOriginType

    public ClassNode getOriginType()
    Description copied from interface: `Variable`
    Returns the type before wrapping primitives type of the variable.
    Specified by:
      `getOriginType` in interface `Variable`

  - ### setOriginType

    public void setOriginType(ClassNode cn)

  - ### isImplicit

    public boolean isImplicit()
    Since:
      5.0.0

  - ### isReceiver

    public boolean isReceiver()
    Since:
      5.0.0