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