org.codehaus.groovy.ast
Class MixinNode

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

public class MixinNode
extends ClassNode

Represents a mixin which can be applied to any ClassNode to implement mixins

Version:
$Revision: 1.1 $
Author:
James Strachan

Field Summary
static org.codehaus.groovy.ast.MixinNode[] EMPTY_ARRAY
           
 
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
MixinNode(String name, int modifiers, String superClass)
           
MixinNode(String name, int modifiers, String superClass, String[] interfaces)
           
 
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, getOuterClass, getOuterField, 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
 

Field Detail

EMPTY_ARRAY

public static final org.codehaus.groovy.ast.MixinNode[] EMPTY_ARRAY
Constructor Detail

MixinNode

public MixinNode(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

MixinNode

public MixinNode(String name,
                 int modifiers,
                 String superClass,
                 String[] interfaces)
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


Copyright © 2003 The Codehaus. All Rights Reserved.