org.codehaus.groovy.ast
Class PropertyNode

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

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

Represents a property (member variable, a getter and setter)

Version:
$Revision: 13649 $
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
PropertyNode(FieldNode field, int modifiers, Statement getterBlock, Statement setterBlock)
           
PropertyNode(String name, int modifiers, ClassNode type, ClassNode owner, Expression initialValueExpression, Statement getterBlock, Statement setterBlock)
           
 
Method Summary
 FieldNode getField()
           
 Statement getGetterBlock()
           
 Expression getInitialExpression()
          expression used to initialize the variable or null of there is no initialization.
 int getModifiers()
           
 String getName()
          the name of the variable
 ClassNode getOriginType()
          the type before wrapping primitives type of the variable
 Statement getSetterBlock()
           
 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.
 boolean isPrivate()
           
 boolean isPublic()
           
 boolean isStatic()
           
 void setClosureSharedVariable(boolean inClosure)
           
 void setField(FieldNode fn)
           
 void setGetterBlock(Statement getterBlock)
           
 void setSetterBlock(Statement setterBlock)
           
 void setType(ClassNode t)
           
 
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

PropertyNode

public PropertyNode(String name,
                    int modifiers,
                    ClassNode type,
                    ClassNode owner,
                    Expression initialValueExpression,
                    Statement getterBlock,
                    Statement setterBlock)

PropertyNode

public PropertyNode(FieldNode field,
                    int modifiers,
                    Statement getterBlock,
                    Statement setterBlock)
Method Detail

getGetterBlock

public Statement getGetterBlock()

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

setGetterBlock

public void setGetterBlock(Statement getterBlock)

setSetterBlock

public void setSetterBlock(Statement setterBlock)

getModifiers

public int getModifiers()

getName

public String getName()
Description copied from interface: Variable
the name of the variable

Specified by:
getName in interface Variable

getSetterBlock

public Statement getSetterBlock()

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

getField

public FieldNode getField()

setField

public void setField(FieldNode fn)

isPrivate

public boolean isPrivate()

isPublic

public boolean isPublic()

isStatic

public boolean isStatic()

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

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

getOriginType

public ClassNode getOriginType()
Description copied from interface: Variable
the type before wrapping primitives type of the variable

Specified by:
getOriginType in interface Variable

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