org.codehaus.groovy.classgen
Class Verifier

java.lang.Object
  |
  +--org.codehaus.groovy.classgen.Verifier
All Implemented Interfaces:
org.objectweb.asm.Constants, GroovyClassVisitor

public class Verifier
extends Object
implements GroovyClassVisitor, org.objectweb.asm.Constants

Verifies the AST node and adds any defaulted AST code before bytecode generation occurs.

Version:
$Revision: 1.15 $
Author:
James Strachan

Field Summary
 
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
Verifier()
           
 
Method Summary
protected  void addClosureCode(org.codehaus.groovy.ast.InnerClassNode node)
           
protected  void addFieldInitialization(org.codehaus.groovy.ast.ClassNode node)
           
protected  void addFieldInitialization(org.codehaus.groovy.ast.ClassNode node, org.codehaus.groovy.ast.ConstructorNode constructorNode)
           
protected  void addFieldInitialization(List list, List staticList, org.codehaus.groovy.ast.ConstructorNode constructorNode, org.codehaus.groovy.ast.FieldNode fieldNode)
           
static String capitalize(String name)
          Capitalizes the start of the given bean property name
protected  org.codehaus.groovy.ast.stmt.Statement createGetterBlock(org.codehaus.groovy.ast.PropertyNode propertyNode, org.codehaus.groovy.ast.FieldNode field)
           
protected  org.codehaus.groovy.ast.stmt.Statement createSetterBlock(org.codehaus.groovy.ast.PropertyNode propertyNode, org.codehaus.groovy.ast.FieldNode field)
           
 org.codehaus.groovy.ast.ClassNode getClassNode()
           
 org.codehaus.groovy.ast.MethodNode getMethodNode()
           
protected  boolean isSuperMethodCall(org.codehaus.groovy.ast.stmt.Statement first)
           
 void visitClass(org.codehaus.groovy.ast.ClassNode node)
           
 void visitConstructor(org.codehaus.groovy.ast.ConstructorNode node)
           
 void visitField(org.codehaus.groovy.ast.FieldNode node)
           
 void visitMethod(org.codehaus.groovy.ast.MethodNode node)
           
 void visitProperty(org.codehaus.groovy.ast.PropertyNode node)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Verifier

public Verifier()
Method Detail

getClassNode

public org.codehaus.groovy.ast.ClassNode getClassNode()

getMethodNode

public org.codehaus.groovy.ast.MethodNode getMethodNode()

visitClass

public void visitClass(org.codehaus.groovy.ast.ClassNode node)
Specified by:
visitClass in interface GroovyClassVisitor

visitConstructor

public void visitConstructor(org.codehaus.groovy.ast.ConstructorNode node)
Specified by:
visitConstructor in interface GroovyClassVisitor

visitMethod

public void visitMethod(org.codehaus.groovy.ast.MethodNode node)
Specified by:
visitMethod in interface GroovyClassVisitor

visitField

public void visitField(org.codehaus.groovy.ast.FieldNode node)
Specified by:
visitField in interface GroovyClassVisitor

visitProperty

public void visitProperty(org.codehaus.groovy.ast.PropertyNode node)
Specified by:
visitProperty in interface GroovyClassVisitor

addClosureCode

protected void addClosureCode(org.codehaus.groovy.ast.InnerClassNode node)

addFieldInitialization

protected void addFieldInitialization(org.codehaus.groovy.ast.ClassNode node)

addFieldInitialization

protected void addFieldInitialization(org.codehaus.groovy.ast.ClassNode node,
                                      org.codehaus.groovy.ast.ConstructorNode constructorNode)

addFieldInitialization

protected void addFieldInitialization(List list,
                                      List staticList,
                                      org.codehaus.groovy.ast.ConstructorNode constructorNode,
                                      org.codehaus.groovy.ast.FieldNode fieldNode)

isSuperMethodCall

protected boolean isSuperMethodCall(org.codehaus.groovy.ast.stmt.Statement first)

capitalize

public static String capitalize(String name)
Capitalizes the start of the given bean property name


createGetterBlock

protected org.codehaus.groovy.ast.stmt.Statement createGetterBlock(org.codehaus.groovy.ast.PropertyNode propertyNode,
                                                                   org.codehaus.groovy.ast.FieldNode field)

createSetterBlock

protected org.codehaus.groovy.ast.stmt.Statement createSetterBlock(org.codehaus.groovy.ast.PropertyNode propertyNode,
                                                                   org.codehaus.groovy.ast.FieldNode field)


Copyright © 2003 The Codehaus. All Rights Reserved.