org.codehaus.groovy.ast
Class InnerClassNode

java.lang.Object
  |
  +--org.codehaus.groovy.ast.ASTNode
        |
        +--org.codehaus.groovy.ast.MetadataNode
              |
              +--org.codehaus.groovy.ast.ClassNode
                    |
                    +--org.codehaus.groovy.ast.InnerClassNode
All Implemented Interfaces:
org.objectweb.asm.Constants

public class InnerClassNode
extends ClassNode

Represents an inner class declaration

Version:
$Revision: 1.3 $
Author:
James Strachan

Field Summary
 
Fields inherited from class org.codehaus.groovy.ast.ASTNode
EMPTY_STRING_ARRAY
 
Fields inherited from interface org.objectweb.asm.Constants
AALOAD, AASTORE, ACC_ABSTRACT, ACC_DEPRECATED, 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_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
 
Constructor Summary
InnerClassNode(org.codehaus.groovy.ast.ClassNode outerClass, String name, int modifiers, String superClass)
           
InnerClassNode(org.codehaus.groovy.ast.ClassNode outerClass, String name, int modifiers, String superClass, String[] interfaces, org.codehaus.groovy.ast.MixinNode[] mixins)
           
 
Method Summary
 org.codehaus.groovy.ast.ClassNode getOuterClass()
          Helper method to avoid casting to inner class
 org.codehaus.groovy.ast.FieldNode getOuterField(String name)
           
 
Methods inherited from class org.codehaus.groovy.ast.ClassNode
addConstructor, addConstructor, addField, addField, addInterface, addMethod, addMethod, addMixin, addProperty, addProperty, addStaticInitializerStatements, getClassNameForExpression, getConstructors, getField, getFields, getGetterMethod, getInterfaces, getMethod, getMethods, getMixins, getModifiers, getModule, getName, getNameWithoutPackage, getPackageName, getProperties, getSetterMethod, getSuperClass, isScriptClass, setModule, visitContents
 
Methods inherited from class org.codehaus.groovy.ast.MetadataNode
addAttribute, getAttributes, getAttributes, setAttribute
 
Methods inherited from class org.codehaus.groovy.ast.ASTNode
getColumnNumber, getLineNumber, getText, setColumnNumber, setCSTNode, setLineNumber, visit
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

InnerClassNode

public InnerClassNode(org.codehaus.groovy.ast.ClassNode outerClass,
                      String name,
                      int modifiers,
                      String superClass)
Parameters:
name - is the full name of the class
modifiers - the modifiers, @see org.objectweb.asm.Constants
superClass - the base class name - use "java.lang.Object" if no direct base class

InnerClassNode

public InnerClassNode(org.codehaus.groovy.ast.ClassNode outerClass,
                      String name,
                      int modifiers,
                      String superClass,
                      String[] interfaces,
                      org.codehaus.groovy.ast.MixinNode[] mixins)
Parameters:
name - is the full name of the class
modifiers - the modifiers, @see org.objectweb.asm.Constants
superClass - the base class name - use "java.lang.Object" if no direct base class
Method Detail

getOuterClass

public org.codehaus.groovy.ast.ClassNode getOuterClass()
Description copied from class: ClassNode
Helper method to avoid casting to inner class

Overrides:
getOuterClass in class ClassNode
Returns:

getOuterField

public org.codehaus.groovy.ast.FieldNode getOuterField(String name)
Overrides:
getOuterField in class ClassNode
Returns:
the field node on the outer class or null if this is not an inner class


Copyright © 2003 The Codehaus. All Rights Reserved.