public class DotnetMethod extends AbstractDotnetMember
| Modifier and Type | Field and Description |
|---|---|
static String |
CONSTRUCTOR_NAME |
static String |
DESTRUCTOR_NAME |
static String |
JAVA_CONSTRUCTOR_NAME |
static String |
JAVA_STATIC_CONSTRUCTOR_NAME |
static String |
MAIN_METHOD_SIGNATURE |
static String |
STATIC_CONSTRUCTOR_NAME |
| Constructor and Description |
|---|
DotnetMethod(ProtoAssemblyAllTypes.MethodDefinition protoMethod) |
DotnetMethod(ProtoAssemblyAllTypes.MethodDefinition protoMethod,
SootClass declaringClass) |
DotnetMethod(ProtoAssemblyAllTypes.MethodDefinition protoMethod,
SootClass declaringClass,
soot.dotnet.members.DotnetMethod.DotnetMethodType declaringMemberType) |
| Modifier and Type | Method and Description |
|---|---|
static String |
convertCilToJvmNaming(String methodName) |
static String |
convertCtorName(String methodName)
Convert Dotnet/CLI constructor names to java byte code constructors, if available
|
SootClass |
getDeclaringClass() |
String |
getName() |
List<ProtoAssemblyAllTypes.ParameterDefinition> |
getParameterDefinitions()
Get parameters of this Method
|
ProtoAssemblyAllTypes.MethodDefinition |
getProtoMessage() |
ProtoAssemblyAllTypes.TypeDefinition |
getReturnType() |
SootMethod |
getSootMethodSignature() |
String |
getUniqueName()
Process Name Mangling to achieve a unique name in the declared class Convert method name to a unique method name if it
has generics or call-by-ref as parameters
|
boolean |
hasCallByRefParameters()
Check if this method contains call-by-ref parameters (e.g.
|
boolean |
hasCilPrimitiveParameters()
Check whether this method contains CIL primitives, such as uint sbyte
|
boolean |
hasGenericParameters()
Check whether this method has generics or call-by-ref parameters
|
boolean |
isConstructor() |
boolean |
isStatic() |
Body |
jimplifyMethodBody(ProtoIlInstructions.IlFunctionMsg ilFunctionMsg)
Generate Jimple Body of this Method
|
SootMethod |
toSootMethod()
Create a SootMethod of this .NET Method
|
SootMethod |
toSootMethod(MethodSource methodSource)
Create SootMethod with specific MethodSource (used by Events and Properties) Events and Properties have other sources
for method bodies
|
checkRewriteCilSpecificMemberpublic static final String STATIC_CONSTRUCTOR_NAME
public static final String CONSTRUCTOR_NAME
public static final String JAVA_STATIC_CONSTRUCTOR_NAME
public static final String JAVA_CONSTRUCTOR_NAME
public static final String DESTRUCTOR_NAME
public static final String MAIN_METHOD_SIGNATURE
public DotnetMethod(ProtoAssemblyAllTypes.MethodDefinition protoMethod, SootClass declaringClass, soot.dotnet.members.DotnetMethod.DotnetMethodType declaringMemberType)
public DotnetMethod(ProtoAssemblyAllTypes.MethodDefinition protoMethod, SootClass declaringClass)
public DotnetMethod(ProtoAssemblyAllTypes.MethodDefinition protoMethod)
public boolean isConstructor()
public boolean isStatic()
public ProtoAssemblyAllTypes.MethodDefinition getProtoMessage()
public String getName()
public ProtoAssemblyAllTypes.TypeDefinition getReturnType()
public SootMethod toSootMethod()
public SootMethod toSootMethod(MethodSource methodSource)
methodSource - public Body jimplifyMethodBody(ProtoIlInstructions.IlFunctionMsg ilFunctionMsg)
ilFunctionMsg - ProtoMsg Method Bodypublic List<ProtoAssemblyAllTypes.ParameterDefinition> getParameterDefinitions()
public SootClass getDeclaringClass()
public SootMethod getSootMethodSignature()
public boolean hasCallByRefParameters()
public boolean hasGenericParameters()
public boolean hasCilPrimitiveParameters()
public String getUniqueName()
public static String convertCtorName(String methodName)
methodName - dotnet constructor nameCopyright © 2024 Soot OSS. All rights reserved.