public class MethodNode extends AnnotatedNode implements org.objectweb.asm.Opcodes
Modifier and Type | Field and Description |
---|---|
static String |
SCRIPT_BODY_METHOD_KEY |
AALOAD, AASTORE, ACC_ABSTRACT, ACC_ANNOTATION, ACC_BRIDGE, ACC_DEPRECATED, ACC_ENUM, ACC_FINAL, ACC_INTERFACE, ACC_MANDATED, 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, ASM4, ASM5, ASTORE, ATHROW, BALOAD, BASTORE, BIPUSH, CALOAD, CASTORE, CHECKCAST, D2F, D2I, D2L, DADD, DALOAD, DASTORE, DCMPG, DCMPL, DCONST_0, DCONST_1, DDIV, DLOAD, DMUL, DNEG, DOUBLE, DREM, DRETURN, DSTORE, DSUB, DUP, DUP_X1, DUP_X2, DUP2, DUP2_X1, DUP2_X2, F_APPEND, F_CHOP, F_FULL, F_NEW, F_SAME, F_SAME1, F2D, F2I, F2L, FADD, FALOAD, FASTORE, FCMPG, FCMPL, FCONST_0, FCONST_1, FCONST_2, FDIV, FLOAD, FLOAT, FMUL, FNEG, FREM, FRETURN, FSTORE, FSUB, GETFIELD, GETSTATIC, GOTO, H_GETFIELD, H_GETSTATIC, H_INVOKEINTERFACE, H_INVOKESPECIAL, H_INVOKESTATIC, H_INVOKEVIRTUAL, H_NEWINVOKESPECIAL, H_PUTFIELD, H_PUTSTATIC, 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, INTEGER, INVOKEDYNAMIC, 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, LONG, LOOKUPSWITCH, LOR, LREM, LRETURN, LSHL, LSHR, LSTORE, LSUB, LUSHR, LXOR, MONITORENTER, MONITOREXIT, MULTIANEWARRAY, NEW, NEWARRAY, NOP, NULL, 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, TOP, UNINITIALIZED_THIS, V1_1, V1_2, V1_3, V1_4, V1_5, V1_6, V1_7, V1_8
Constructor and Description |
---|
MethodNode(String name,
int modifiers,
ClassNode returnType,
Parameter[] parameters,
ClassNode[] exceptions,
Statement code) |
Modifier and Type | Method and Description |
---|---|
Statement |
getCode() |
ClassNode[] |
getExceptions() |
Statement |
getFirstStatement() |
GenericsType[] |
getGenericsTypes() |
int |
getModifiers() |
String |
getName() |
Parameter[] |
getParameters() |
ClassNode |
getReturnType() |
String |
getText()
Provides a nicely formatted string of the method definition.
|
String |
getTypeDescriptor()
The type descriptor for a method node is a string containing the name of the method, its return type,
and its parameter types in a canonical form.
|
VariableScope |
getVariableScope() |
boolean |
hasAnnotationDefault() |
boolean |
hasDefaultValue() |
boolean |
isAbstract() |
boolean |
isDynamicReturnType() |
boolean |
isFinal() |
boolean |
isPrivate() |
boolean |
isProtected() |
boolean |
isPublic() |
boolean |
isScriptBody() |
boolean |
isStatic() |
boolean |
isStaticConstructor() |
boolean |
isSyntheticPublic()
Indicates that this method has been "promoted" to public by
Groovy when in fact there was no public modifier explicitly
in the source code.
|
boolean |
isVoidMethod() |
void |
setAnnotationDefault(boolean b) |
void |
setCode(Statement code) |
void |
setGenericsTypes(GenericsType[] genericsTypes) |
void |
setIsScriptBody()
Set the metadata flag for this method to indicate that it is a script body implementation.
|
void |
setModifiers(int modifiers) |
void |
setParameters(Parameter[] parameters) |
void |
setReturnType(ClassNode returnType) |
void |
setSyntheticPublic(boolean syntheticPublic) |
void |
setVariableScope(VariableScope variableScope) |
String |
toString() |
addAnnotation, addAnnotations, getAnnotations, getAnnotations, getDeclaringClass, hasNoRealSourcePosition, isSynthetic, setDeclaringClass, setHasNoRealSourcePosition, setSynthetic
copyNodeMetaData, getColumnNumber, getLastColumnNumber, getLastLineNumber, getLineNumber, getNodeMetaData, putNodeMetaData, removeNodeMetaData, setColumnNumber, setLastColumnNumber, setLastLineNumber, setLineNumber, setNodeMetaData, setSourcePosition, visit
public static final String SCRIPT_BODY_METHOD_KEY
public String getTypeDescriptor()
public boolean isVoidMethod()
public Statement getCode()
public void setCode(Statement code)
public int getModifiers()
public void setModifiers(int modifiers)
public String getName()
public Parameter[] getParameters()
public void setParameters(Parameter[] parameters)
public ClassNode getReturnType()
public VariableScope getVariableScope()
public void setVariableScope(VariableScope variableScope)
public boolean isDynamicReturnType()
public boolean isAbstract()
public boolean isStatic()
public boolean isPublic()
public boolean isPrivate()
public boolean isFinal()
public boolean isProtected()
public boolean hasDefaultValue()
public boolean isScriptBody()
public void setIsScriptBody()
createStatementsClass().
public void setReturnType(ClassNode returnType)
public ClassNode[] getExceptions()
public Statement getFirstStatement()
public GenericsType[] getGenericsTypes()
public void setGenericsTypes(GenericsType[] genericsTypes)
public void setAnnotationDefault(boolean b)
public boolean hasAnnotationDefault()
public boolean isStaticConstructor()
public boolean isSyntheticPublic()
public void setSyntheticPublic(boolean syntheticPublic)