|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectcom.ibm.wala.classLoader.SyntheticMethod
public class SyntheticMethod
An implementation of IMethod, usually for a synthesized method that is not read directly from any source Module.
| Field Summary | |
|---|---|
protected IClass |
declaringClass
|
static SSAInstruction[] |
NO_STATEMENTS
|
protected IMethod |
resolvedMethod
|
| Constructor Summary | |
|---|---|
SyntheticMethod(IMethod method,
IClass declaringClass,
boolean isStatic,
boolean isFactory)
|
|
SyntheticMethod(MethodReference method,
IClass declaringClass,
boolean isStatic,
boolean isFactory)
|
|
| Method Summary | |
|---|---|
boolean |
equals(java.lang.Object obj)
|
BytecodeStream |
getBytecodeStream()
|
IClassHierarchy |
getClassHierarchy()
|
TypeReference[] |
getDeclaredExceptions()
|
IClass |
getDeclaringClass()
Return the object that represents the declaring class for this member. |
Descriptor |
getDescriptor()
something like: (IILjava.lang.String;SLjava.sql.Date;)Ljava.lang.Integer; |
int |
getLineNumber(int bcIndex)
|
java.lang.String |
getLocalVariableName(int bcIndex,
int localNumber)
|
int |
getMaxLocals()
|
int |
getMaxStackHeight()
|
Atom |
getName()
|
int |
getNumberOfParameters()
Method getNumberOfParameters. |
TypeReference |
getParameterType(int i)
By convention, for a non-static method, getParameterType(0) is the this pointer |
java.lang.String |
getPoison()
|
byte |
getPoisonLevel()
|
MethodReference |
getReference()
|
TypeReference |
getReturnType()
|
Selector |
getSelector()
something like: foo(Ljava/langString;)Ljava/lang/Class; |
java.lang.String |
getSignature()
something like: com.foo.bar.createLargeOrder(IILjava.lang.String;SLjava.sql.Date;)Ljava.lang.Integer; |
SSAInstruction[] |
getStatements()
|
SSAInstruction[] |
getStatements(SSAOptions options)
Deprecated. |
boolean |
hasExceptionHandler()
|
int |
hashCode()
|
boolean |
hasLocalVariableTable()
|
boolean |
hasPoison()
|
boolean |
isAbstract()
Is this method abstract? |
boolean |
isBridge()
Is this method a bridge method? See JLS 3rd Edition 15.12.4.5 |
boolean |
isClinit()
Is this method a class initializer? |
boolean |
isFactoryMethod()
|
boolean |
isFinal()
Is this method final? |
boolean |
isInit()
Is this method an object initializer? |
boolean |
isNative()
Is this method native? |
boolean |
isPrivate()
Is this method private? |
boolean |
isProtected()
Is this method protected? |
boolean |
isPublic()
Is this method public? |
boolean |
isStatic()
Is this member static? |
boolean |
isSynchronized()
Is this method synchronized? |
boolean |
isSynthetic()
Did someone synthesize this method? (As opposed to reading it from a class file) |
InducedCFG |
makeControlFlowGraph(SSAInstruction[] instructions)
Create an InducedCFG from an instruction array. |
IR |
makeIR(Context context,
SSAOptions options)
Most subclasses should override this. |
java.lang.String |
toString()
|
| Methods inherited from class java.lang.Object |
|---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
public static final SSAInstruction[] NO_STATEMENTS
protected final IMethod resolvedMethod
protected final IClass declaringClass
| Constructor Detail |
|---|
public SyntheticMethod(MethodReference method,
IClass declaringClass,
boolean isStatic,
boolean isFactory)
public SyntheticMethod(IMethod method,
IClass declaringClass,
boolean isStatic,
boolean isFactory)
| Method Detail |
|---|
public boolean isClinit()
IMethod
isClinit in interface IMethodIMethod.isClinit()public boolean isInit()
IMethod
isInit in interface IMethodIMethod.isInit()public boolean isStatic()
IMember
isStatic in interface IMemberIMember.isStatic()public boolean isNative()
IMethod
isNative in interface IMethodIMethod.isNative()public boolean isAbstract()
IMethod
isAbstract in interface IMethodIMethod.isAbstract()public boolean isPrivate()
IMethod
isPrivate in interface IMethodIMethod.isPrivate()public boolean isProtected()
IMethod
isProtected in interface IMethodpublic boolean isPublic()
IMethod
isPublic in interface IMethodpublic boolean isFinal()
IMethod
isFinal in interface IMethodIMethod.isFinal()public boolean isBridge()
IMethod
isBridge in interface IMethodIMethod.isBridge()public boolean isSynchronized()
IMethod
isSynchronized in interface IMethodIMethod.isAbstract()public boolean isSynthetic()
IMethod
isSynthetic in interface IMethodIMethod.isSynthetic()public MethodReference getReference()
getReference in interface IMethodIMethod.getReference()public InducedCFG makeControlFlowGraph(SSAInstruction[] instructions)
InducedCFG from an instruction array.
NOTE: SIDE EFFECT!!! ... nulls out phi instructions in the instruction array!
public BytecodeStream getBytecodeStream()
throws java.lang.UnsupportedOperationException
java.lang.UnsupportedOperationException
public int getMaxLocals()
throws java.lang.UnsupportedOperationException
getMaxLocals in interface IMethodjava.lang.UnsupportedOperationException
public int getMaxStackHeight()
throws java.lang.UnsupportedOperationException
getMaxStackHeight in interface IMethodjava.lang.UnsupportedOperationExceptionpublic IClass getDeclaringClass()
IMember
getDeclaringClass in interface IMemberpublic java.lang.String toString()
toString in class java.lang.Objectpublic int hashCode()
hashCode in class java.lang.Objectpublic boolean equals(java.lang.Object obj)
equals in class java.lang.Objectpublic boolean hasExceptionHandler()
hasExceptionHandler in interface IMethodpublic boolean hasPoison()
public java.lang.String getPoison()
public byte getPoisonLevel()
@Deprecated public SSAInstruction[] getStatements(SSAOptions options)
public IR makeIR(Context context,
SSAOptions options)
throws UnimplementedError
context - TODOoptions - options governing IR conversion
UnimplementedErrorpublic TypeReference getParameterType(int i)
IMethod
getParameterType in interface IMethodpublic int getNumberOfParameters()
IMethod
getNumberOfParameters in interface IMethodIMethod.getNumberOfParameters()
public TypeReference[] getDeclaredExceptions()
throws InvalidClassFileException
getDeclaredExceptions in interface IMethodInvalidClassFileExceptionpublic Atom getName()
getName in interface IMemberpublic Descriptor getDescriptor()
IMethod
getDescriptor in interface IMethodpublic int getLineNumber(int bcIndex)
getLineNumber in interface IMethodpublic boolean isFactoryMethod()
public java.lang.String getSignature()
IMethod
getSignature in interface IMethodpublic Selector getSelector()
IMethod
getSelector in interface IMethod
public java.lang.String getLocalVariableName(int bcIndex,
int localNumber)
getLocalVariableName in interface IMethodpublic boolean hasLocalVariableTable()
hasLocalVariableTable in interface IMethodpublic SSAInstruction[] getStatements()
public TypeReference getReturnType()
getReturnType in interface IMethodpublic IClassHierarchy getClassHierarchy()
getClassHierarchy in interface IClassHierarchyDweller
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||