org.codehaus.groovy.ast
Class FieldNode

java.lang.Object
  extended by org.codehaus.groovy.ast.ASTNode
      extended by org.codehaus.groovy.ast.AnnotatedNode
          extended by org.codehaus.groovy.ast.FieldNode
All Implemented Interfaces:
Variable, org.objectweb.asm.Opcodes

public class FieldNode
extends AnnotatedNode
implements org.objectweb.asm.Opcodes, Variable

Represents a field (member variable)

Version:
$Revision: 13600 $
Author:
James Strachan

Field Summary
 
Fields inherited from interface org.objectweb.asm.Opcodes
AALOAD, AASTORE, ACC_ABSTRACT, ACC_ANNOTATION, ACC_BRIDGE, ACC_DEPRECATED, ACC_ENUM, ACC_FINAL, ACC_INTERFACE, ACC_NATIVE, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_STATIC, ACC_STRICT, ACC_SUPER, ACC_SYNCHRONIZED, ACC_SYNTHETIC, ACC_TRANSIENT, ACC_VARARGS, ACC_VOLATILE, ACONST_NULL, ALOAD, ANEWARRAY, ARETURN, ARRAYLENGTH, ASTORE, ATHROW, BALOAD, BASTORE, BIPUSH, CALOAD, CASTORE, CHECKCAST, D2F, D2I, D2L, DADD, DALOAD, DASTORE, DCMPG, DCMPL, DCONST_0, DCONST_1, DDIV, DLOAD, DMUL, DNEG, DREM, DRETURN, DSTORE, DSUB, DUP, DUP_X1, DUP_X2, DUP2, DUP2_X1, DUP2_X2, F2D, F2I, F2L, FADD, FALOAD, FASTORE, FCMPG, FCMPL, FCONST_0, FCONST_1, FCONST_2, FDIV, FLOAD, FMUL, FNEG, FREM, FRETURN, FSTORE, FSUB, GETFIELD, GETSTATIC, GOTO, I2B, I2C, I2D, I2F, I2L, I2S, IADD, IALOAD, IAND, IASTORE, ICONST_0, ICONST_1, ICONST_2, ICONST_3, ICONST_4, ICONST_5, ICONST_M1, IDIV, IF_ACMPEQ, IF_ACMPNE, IF_ICMPEQ, IF_ICMPGE, IF_ICMPGT, IF_ICMPLE, IF_ICMPLT, IF_ICMPNE, IFEQ, IFGE, IFGT, IFLE, IFLT, IFNE, IFNONNULL, IFNULL, IINC, ILOAD, IMUL, INEG, INSTANCEOF, INVOKEINTERFACE, INVOKESPECIAL, INVOKESTATIC, INVOKEVIRTUAL, IOR, IREM, IRETURN, ISHL, ISHR, ISTORE, ISUB, IUSHR, IXOR, JSR, L2D, L2F, L2I, LADD, LALOAD, LAND, LASTORE, LCMP, LCONST_0, LCONST_1, LDC, LDIV, LLOAD, LMUL, LNEG, LOOKUPSWITCH, LOR, LREM, LRETURN, LSHL, LSHR, LSTORE, LSUB, LUSHR, LXOR, MONITORENTER, MONITOREXIT, MULTIANEWARRAY, NEW, NEWARRAY, NOP, POP, POP2, PUTFIELD, PUTSTATIC, RET, RETURN, SALOAD, SASTORE, SIPUSH, SWAP, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT, TABLESWITCH, V1_1, V1_2, V1_3, V1_4, V1_5, V1_6
 
Constructor Summary
FieldNode(String name, int modifiers, ClassNode type, ClassNode owner, Expression initialValueExpression)
           
 
Method Summary
 Expression getInitialExpression()
          expression used to initialize the variable or null of there is no initialization.
 Expression getInitialValueExpression()
           
 int getModifiers()
           
 String getName()
          the name of the variable
 ClassNode getOriginType()
          the type before wrapping primitives type of the variable
 ClassNode getOwner()
           
 ClassNode getType()
          the type of the variable
 boolean hasInitialExpression()
          returns true if there is an initialization expression
 boolean isClosureSharedVariable()
           
 boolean isDynamicTyped()
           
 boolean isHolder()
           
 boolean isInStaticContext()
          returns true if this variable is used in a static context.
 boolean isPublic()
           
 boolean isStatic()
           
static FieldNode newStatic(Class theClass, String name)
           
 void rename(String name)
           
 void setClosureSharedVariable(boolean inClosure)
           
 void setHolder(boolean holder)
           
 void setInitialValueExpression(Expression initialValueExpression)
           
 void setModifiers(int modifiers)
           
 void setOwner(ClassNode owner)
           
 void setType(ClassNode type)
           
 
Methods inherited from class org.codehaus.groovy.ast.AnnotatedNode
addAnnotation, addAnnotations, getAnnotations, getAnnotations, getDeclaringClass, isSynthetic, setDeclaringClass, setSynthetic
 
Methods inherited from class org.codehaus.groovy.ast.ASTNode
getColumnNumber, getLastColumnNumber, getLastLineNumber, getLineNumber, getText, setColumnNumber, setLastColumnNumber, setLastLineNumber, setLineNumber, setSourcePosition, visit
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FieldNode

public FieldNode(String name,
                 int modifiers,
                 ClassNode type,
                 ClassNode owner,
                 Expression initialValueExpression)
Method Detail

newStatic

public static FieldNode newStatic(Class theClass,
                                  String name)
                           throws SecurityException,
                                  NoSuchFieldException
Throws:
SecurityException
NoSuchFieldException

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

getModifiers

public int getModifiers()

getName

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

getOwner

public ClassNode getOwner()

isHolder

public boolean isHolder()

setHolder

public void setHolder(boolean holder)

isDynamicTyped

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

setModifiers

public void setModifiers(int modifiers)

isStatic

public boolean isStatic()
Returns:
true if the field is static

isPublic

public boolean isPublic()
Returns:
true if the field is public

setOwner

public void setOwner(ClassNode owner)
Parameters:
owner - The owner to set.

hasInitialExpression

public boolean hasInitialExpression()
Description copied from interface: Variable
returns true if there is an initialization expression

Specified by:
hasInitialExpression in interface Variable

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

getInitialValueExpression

public Expression getInitialValueExpression()

setInitialValueExpression

public void setInitialValueExpression(Expression initialValueExpression)

isClosureSharedVariable

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

setClosureSharedVariable

public void setClosureSharedVariable(boolean inClosure)
Specified by:
setClosureSharedVariable 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

rename

public void rename(String name)

Copyright © 2003-2010 The Codehaus. All rights reserved.