anvil.script.statements
Class MethodStatement

java.lang.Object
  |
  +--anvil.script.statements.Statement
        |
        +--anvil.script.statements.ScopedStatement
              |
              +--anvil.script.statements.DefinitionStatement
                    |
                    +--anvil.script.statements.FunctionStatement
                          |
                          +--anvil.script.statements.MethodStatement
All Implemented Interfaces:
ClassMember, CodecConstants, CompilableFunction, Function, MethodType, Scope, Type
Direct Known Subclasses:
ConstructorStatement

public class MethodStatement
extends FunctionStatement
implements MethodType

class MethodStatement


Field Summary
 
Fields inherited from class anvil.script.statements.FunctionStatement
_block, _context, _escaped, _handler, _local_frame, _localcount, _parameters, _return_var, _signature, _switch, _synchronized, _yieldcount
 
Fields inherited from class anvil.script.statements.DefinitionStatement
_contentstate, _descriptor, _document, _externals, _imports, _name, _parent, _parents, _private, _taglibs, _types
 
Fields inherited from class anvil.script.statements.Statement
CONTENT_COMPRESS, CONTENT_PACK, CONTENT_PRESERVE, CONTENT_PROCESSING, CONTENT_SILENT, DEFAULT_NAMESPACE, EMPTY, ST_ASSERT, ST_BLOCK, ST_BREAK, ST_CALL, ST_CASE, ST_CATCH, ST_CDATA, ST_CLASS, ST_COMPRESS, ST_CONST, ST_CONTINUE, ST_CUSTOM_TAG, ST_DEFAULT, ST_DO, ST_DOCUMENT, ST_ELSE, ST_ELSEIF, ST_ENDCASE, ST_ENDCLASS, ST_ENDCONST, ST_ENDDEFAULT, ST_ENDEVAL, ST_ENDFOR, ST_ENDFOREACH, ST_ENDFUNCTION, ST_ENDIF, ST_ENDINNER, ST_ENDMODULE, ST_ENDNAMESPACE, ST_ENDOUTER, ST_ENDREPLACE, ST_ENDSWITCH, ST_ENDVAR, ST_ENDWHILE, ST_EVAL, ST_EXIT, ST_FINALLY, ST_FOR, ST_FOREACH, ST_FUNCTION, ST_IF, ST_IMPLICIT_BLOCK, ST_IMPORT, ST_INNER, ST_INTERFACE, ST_INVALID, ST_INVOKE, ST_MODULE, ST_NAMESPACE, ST_NONE, ST_OUTER, ST_PACK, ST_PRESERVE, ST_PRINT, ST_REPLACE, ST_RETURN, ST_SILENT, ST_SWITCH, ST_SYNCHRONIZED, ST_TAG, ST_THROW, ST_TRY, ST_VAR, ST_WHILE, ST_YIELD
 
Fields inherited from interface anvil.script.CompilableFunction
CLASSES, PARAMETER_ANY, PARAMETER_ANYLIST, PARAMETER_ARRAY, PARAMETER_BOOLEAN, PARAMETER_CONTEXT, PARAMETER_DOUBLE, PARAMETER_INT, PARAMETER_LIST, PARAMETER_LONG, PARAMETER_OBJECT, PARAMETER_REST, PARAMETER_STRING, SIGNATURES
 
Fields inherited from interface anvil.script.Type
CLASS, CONSTANT_VARIABLE, CONSTRUCTOR, FUNCTION, FUNCTION_PARAMETER, GLOBAL_NAMESPACE, IMPORT, INTERFACE, INTERFACE_METHOD, LOCAL_VARIABLE, MEMBER_VARIABLE, METHOD, MODULE, NAMESPACE, SCOPE0, STATIC_VARIABLE, SYSTEM_NAMESPACE, TYPE_NAMES
 
Fields inherited from interface anvil.codec.CodecConstants
ACC_ABSTRACT, ACC_FINAL, ACC_INTERFACE, ACC_NATIVE, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_STATIC, ACC_STRICT, ACC_SUPER, ACC_SYNCHRONIZED, ACC_TRANSIENT, ACC_VOLATILE, ATTR_Code, ATTR_ConstantValue, ATTR_Deprecated, ATTR_Exceptions, ATTR_InnerClasses, ATTR_LineNumberTable, ATTR_LocalVariableTable, ATTR_SourceFile, ATTR_Synthetic, CLASS_MAGIC, CONSTANT_Class, CONSTANT_Double, CONSTANT_FieldRef, CONSTANT_Float, CONSTANT_Integer, CONSTANT_InterfaceMethodRef, CONSTANT_Long, CONSTANT_MethodRef, CONSTANT_NameAndType, CONSTANT_SourceFile, CONSTANT_String, CONSTANT_Utf8, MAJOR_VERSION, MINOR_VERSION, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT
 
Constructor Summary
MethodStatement(DefinitionStatement parent, FunctionStatement context, java.lang.String name, Modifiers mods)
           
 
Method Summary
 void check(ErrorListener context)
           
 void compile(ByteCompiler context)
           
 ClassType getClassType()
           
 java.lang.String getDescriptor()
           
 int getType()
           
 int getTypeRef(ConstantPool pool)
           
 boolean isStaticRegion()
           
 void markPrivate()
           
 
Methods inherited from class anvil.script.statements.FunctionStatement
addYieldState, bindYieldState, callFinalizer, compileBody, compileDescriptor, declare, declareParameter, declareStatic, execute, execute, execute, execute, execute, execute, execute, getAttribute, getChildStatement, getContext, getDispatcher, getDocument, getFrameIndex, getMinimumParameterCount, getName, getNextLocalSlot, getParameterCount, getParameterDefault, getParameterDoc, getParameterName, getParameterType, getReturnVariable, getSignature, isEscaped, isGenerator, isInnerFunction, lookupDeclaration, markEscaped, name, onTag, parse, parseParameters, setParameters, toString, typeOf
 
Methods inherited from class anvil.script.statements.DefinitionStatement
addEntityImport, addExternal, addExternal, addExternals, addHrefImport, addImport, addTaglib, compileMembers, declare, declare, declare, follow, getContentState, getDeclarations, getModifiers, getName, getNextInlined, getParent, getParentDefinition, getParents, getQualifiedName, getTag, importExternals, isEntityReserved, isPrivate, lookupLocalDeclaration, onClass, onConst, onFunction, onImport, onNamespace, onVar, setContentState, toString
 
Methods inherited from class anvil.script.statements.ScopedStatement
hasEnd, isBlocked, parseCondition
 
Methods inherited from class anvil.script.statements.Statement
addChild, allowBreak, allowContinue, allowLabel, allowYield, compress, eliminate, getBlockStatement, getCatchStatement, getClassStatement, getDefinitionStatement, getFunctionStatement, getInterfaceStatement, getLabelDepth, getLabeled, getLocation, getModuleStatement, getParentStatement, getScopeStatement, getStaticContent, getSwitch, getTagId, getTypeRef, hasStaticContent, isDeclared, lookupAnyDeclaration, onCharacters, onProcessingInstruction, pack, parseLabel, setChildStatement, setLocation, setParentStatement
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface anvil.script.CompilableFunction
getAttribute, getDispatcher, getMinimumParameterCount, getParameterCount, getParameterDefault, getParameterDoc, getParameterName, getParameterType, isInnerFunction
 
Methods inherited from interface anvil.script.Function
execute, execute, execute, execute, execute, execute, execute
 
Methods inherited from interface anvil.script.Type
getDocument, getName, getParent, getParents, getQualifiedName, isPrivate
 

Constructor Detail

MethodStatement

public MethodStatement(DefinitionStatement parent,
                       FunctionStatement context,
                       java.lang.String name,
                       Modifiers mods)
Method Detail

getType

public int getType()
Specified by:
getType in interface Type
Overrides:
getType in class FunctionStatement

markPrivate

public void markPrivate()

getDescriptor

public java.lang.String getDescriptor()
Overrides:
getDescriptor in class FunctionStatement

getTypeRef

public int getTypeRef(ConstantPool pool)
Specified by:
getTypeRef in interface Type
Overrides:
getTypeRef in class FunctionStatement

getClassType

public ClassType getClassType()
Specified by:
getClassType in interface ClassMember

isStaticRegion

public boolean isStaticRegion()
Overrides:
isStaticRegion in class FunctionStatement

check

public void check(ErrorListener context)
Overrides:
check in class FunctionStatement

compile

public void compile(ByteCompiler context)
Overrides:
compile in class FunctionStatement