net.janino
Class Java.FunctionDeclarator
java.lang.Object
|
+--net.janino.Java.Located
|
+--net.janino.Java.FunctionDeclarator
- All Implemented Interfaces:
- Java.Locatable, Java.Scope
- Direct Known Subclasses:
- Java.ConstructorDeclarator, Java.MethodDeclarator
- Enclosing class:
- Java
- public abstract static class Java.FunctionDeclarator
- extends net.janino.Java.Located
- implements Java.Scope
Abstract base class for Java.ConstructorDeclarator
and
Java.MethodDeclarator
.
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
declaringClassOrInterface
protected Java.ClassOrInterfaceDeclaration declaringClassOrInterface
modifiers
protected short modifiers
thrownExceptions
protected Java.Type[] thrownExceptions
Java.FunctionDeclarator
public Java.FunctionDeclarator(Scanner.Location location,
Java.ClassOrInterfaceDeclaration declaringClassOrInterface,
short modifiers,
Java.Type type,
java.lang.String name,
Java.FormalParameter[] formalParameters,
Java.Type[] thrownExceptions)
getEnclosingScope
public Java.Scope getEnclosingScope()
- Specified by:
getEnclosingScope
in interface Java.Scope
- Following copied from interface:
net.janino.Java.Scope
- Returns:
- Enclusing scope or "null".
getModifiers
public short getModifiers()
getReturnType
public IClass getReturnType()
throws Java.CompileException
getName
public java.lang.String getName()
getFormalParameters
public Java.FormalParameter[] getFormalParameters()
compile
public void compile(ClassFile classFile,
int debuggingInformation)
throws Java.CompileException
getBlockStatementsToCompile
protected abstract java.util.List getBlockStatementsToCompile()
createDummyCodeAttribute
public ClassFile.CodeAttribute createDummyCodeAttribute()
getLocation
public Scanner.Location getLocation()
- Specified by:
getLocation
in interface Java.Locatable
throwParseException
public void throwParseException(java.lang.String message)
throws Parser.ParseException
- Specified by:
throwParseException
in interface Java.Locatable
compileError
public void compileError(java.lang.String message)
throws Java.CompileException
- Specified by:
compileError
in interface Java.Locatable
write
public void write(byte[] b)
writeByte
public void writeByte(int v)
writeInt
public void writeInt(int v)
writeShort
public void writeShort(int v)
writeOpcode
public void writeOpcode(int opcode)
writeBranch
public void writeBranch(int opcode,
ClassFile.CodeAttribute.Offset dst)
writeOffset
public void writeOffset(ClassFile.CodeAttribute.Offset src,
ClassFile.CodeAttribute.Offset dst)
writeConstantClassInfo
public void writeConstantClassInfo(java.lang.String descriptor)
writeConstantFieldrefInfo
public void writeConstantFieldrefInfo(java.lang.String classFD,
java.lang.String fieldName,
java.lang.String fieldFD)
writeConstantMethodrefInfo
public void writeConstantMethodrefInfo(java.lang.String classFD,
java.lang.String methodName,
java.lang.String methodMD)
writeConstantInterfaceMethodrefInfo
public void writeConstantInterfaceMethodrefInfo(java.lang.String classFD,
java.lang.String methodName,
java.lang.String methodMD)
writeConstantStringInfo
public void writeConstantStringInfo(java.lang.String value)
addConstantStringInfo
public short addConstantStringInfo(java.lang.String value)
writeConstantIntegerInfo
public void writeConstantIntegerInfo(int value)
addConstantIntegerInfo
public short addConstantIntegerInfo(int value)
writeConstantFloatInfo
public void writeConstantFloatInfo(float value)
addConstantFloatInfo
public short addConstantFloatInfo(float value)
writeConstantLongInfo
public void writeConstantLongInfo(long value)
writeConstantDoubleInfo
public void writeConstantDoubleInfo(double value)
newOffset
public ClassFile.CodeAttribute.Offset newOffset()
newUnsetOffset
public ClassFile.CodeAttribute.Offset newUnsetOffset()
newInserter
public ClassFile.CodeAttribute.Inserter newInserter()
pushInserter
public void pushInserter(ClassFile.CodeAttribute.Inserter ins)
popInserter
public void popInserter()
saveLocalVariables
public void saveLocalVariables()
restoreLocalVariables
public void restoreLocalVariables()
allocateLocalVariable
public short allocateLocalVariable(short size)