org.biojava.utils.bytecode
Class GeneratedCodeMethod

java.lang.Object
  extended by org.biojava.utils.bytecode.GeneratedCodeMethod
All Implemented Interfaces:
CodeMethod

public final class GeneratedCodeMethod
extends Object
implements CodeMethod

A method that will be generated.

These are instantiated by factory methods on GeneratedCodeClass, and can not be instantiated directly.

Author:
Thomas Down, Matthew Pocock

Method Summary
 void addThrownException(CodeClass cc)
          Adds a feature to the ThrownException attribute of the GeneratedCodeMethod object
 CodeClass getContainingClass()
          The class that contains this method
 String getDescriptor()
          A human-readable description of the class
 String getFullName()
          The fully qualified name for this class
 int getModifiers()
          Get the modifiers, such as PUBLIC, ABSTRACT and so on
 String getName()
          The name of the method.
 CodeClass getParameterType(int pos)
          Get the type of the parameter at a given position
 CodeClass getReturnType()
          Get the return type
 LocalVariable getThis()
          Gets the This attribute of the GeneratedCodeMethod object
 Set getThrownExceptions()
          Gets the ThrownExceptions attribute of the GeneratedCodeMethod object
 LocalVariable getVariable(int pos)
          Gets the Variable attribute of the GeneratedCodeMethod object.
 LocalVariable getVariable(String argName)
          Gets the Variable attribute of the GenerateCodeMethod object by name.
 int numParameters()
          Get the number of parameters taken by this method
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getName

public String getName()
Description copied from interface: CodeMethod
The name of the method.

Specified by:
getName in interface CodeMethod
Returns:
the method name

getFullName

public String getFullName()
Description copied from interface: CodeMethod
The fully qualified name for this class

Specified by:
getFullName in interface CodeMethod
Returns:
the full name

getContainingClass

public CodeClass getContainingClass()
Description copied from interface: CodeMethod
The class that contains this method

Specified by:
getContainingClass in interface CodeMethod
Returns:
the containing class

getDescriptor

public String getDescriptor()
Description copied from interface: CodeMethod
A human-readable description of the class

Specified by:
getDescriptor in interface CodeMethod
Returns:
the class description

getModifiers

public int getModifiers()
Description copied from interface: CodeMethod
Get the modifiers, such as PUBLIC, ABSTRACT and so on

Specified by:
getModifiers in interface CodeMethod
Returns:
the class modifiers

getReturnType

public CodeClass getReturnType()
Description copied from interface: CodeMethod
Get the return type

Specified by:
getReturnType in interface CodeMethod
Returns:
the return type

numParameters

public int numParameters()
Description copied from interface: CodeMethod
Get the number of parameters taken by this method

Specified by:
numParameters in interface CodeMethod
Returns:
the number of parameters

getParameterType

public CodeClass getParameterType(int pos)
Description copied from interface: CodeMethod
Get the type of the parameter at a given position

Specified by:
getParameterType in interface CodeMethod
Parameters:
pos - the position to fetch the parameter type for
Returns:
the type of the parameter at that position

getVariable

public LocalVariable getVariable(int pos)
Gets the Variable attribute of the GeneratedCodeMethod object.

There is one local variable for each of the arguments of the method, indexed from 0.

Parameters:
pos - the index of the local variable
Returns:
the local variable

getVariable

public LocalVariable getVariable(String argName)
                          throws NoSuchElementException
Gets the Variable attribute of the GenerateCodeMethod object by name.

All methods have a variable under the string "this". If it was constructed with a String [] naming the args, the locals for each local can be retrieved by name.

Parameters:
argName - a String naming the local
Returns:
the LocalVariable for that argName
Throws:
NoSuchElementException - if there is no local with that name

getThis

public LocalVariable getThis()
Gets the This attribute of the GeneratedCodeMethod object

Returns:
The This value

getThrownExceptions

public Set getThrownExceptions()
Gets the ThrownExceptions attribute of the GeneratedCodeMethod object

Returns:
The ThrownExceptions value

addThrownException

public void addThrownException(CodeClass cc)
Adds a feature to the ThrownException attribute of the GeneratedCodeMethod object

Parameters:
cc - The feature to be added to the ThrownException attribute