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:
    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.
  Author:
    James Strachan

- - ### Field Summary

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

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Parameter(ClassNode type, java.lang.String name)`
    `Parameter(ClassNode type, java.lang.String name, Expression defaultValue)`

  - ### Method Summary

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

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

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

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

      `copyNodeMetaData, getColumnNumber, getLastColumnNumber, getLastLineNumber, getLineNumber, getNodeMetaData, getNodeMetaData, getText, putNodeMetaData, removeNodeMetaData, setColumnNumber, setLastColumnNumber, setLastLineNumber, setLineNumber, setNodeMetaData, setSourcePosition, visit`

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

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

- - ### Field Detail

    - #### EMPTY_ARRAY

          public static final Parameter[] EMPTY_ARRAY

  - ### Constructor Detail

    - #### Parameter

          public Parameter(ClassNode type,
                           java.lang.String name)

    - #### Parameter

          public Parameter(ClassNode type,
                           java.lang.String name,
                           Expression defaultValue)

  - ### Method Detail

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `java.lang.Object`

    - #### getName

          public java.lang.String getName()

      Description copied from interface: `Variable`
      the name of the variable
      Specified by:
        `getName` in interface `Variable`

    - #### getType

          public ClassNode getType()

      Description copied from interface: `Variable`
      the type of the variable
      Specified by:
        `getType` in interface `Variable`

    - #### setType

          public void setType(ClassNode type)

    - #### 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`
      expression used to initialize the variable or null of there is no initialization.
      Specified by:
        `getInitialExpression` in interface `Variable`
      Returns:
        the default value expression for this parameter or null if no default value is specified

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

    - #### getOriginType

          public ClassNode getOriginType()

      Description copied from interface: `Variable`
      the type before wrapping primitives type of the variable
      Specified by:
        `getOriginType` in interface `Variable`

    - #### setOriginType

          public void setOriginType(ClassNode cn)

    - #### setModifiers

          public void setModifiers(int modifiers)