Package sootup.core.model
Class AbstractClass
java.lang.Object
sootup.core.model.AbstractClass
- Direct Known Subclasses:
SootClass
Abstract class represents a class/module lives in
View
. It may have different
implementations, since we want to support multiple languages. An abstract class must be uniquely
identified by its Signature
.- Author:
- Linghui Luo
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription@NonNull SootClassSource
Returns the field of this class with the given name.getField
(@NonNull FieldSubSignature subSignature) Attemtps to retrieve the field with the given FieldSubSignature.@NonNull Optional<? extends SootMethod>
Attempts to retrieve the method with the given name and parameters.@NonNull Optional<? extends SootMethod>
getMethod
(@NonNull MethodSubSignature subSignature) Attempts to retrieve the method with the given subSignature.abstract @NonNull Set<? extends SootMethod>
@NonNull Set<? extends SootMethod>
getMethodsByName
(@NonNull String name) Attempts to retrieve the method with the given name.abstract @NonNull String
getName()
abstract @NonNull Type
getType()
-
Field Details
-
classSource
-
-
Constructor Details
-
AbstractClass
-
-
Method Details
-
getClassSource
-
getName
-
getType
-
getFields
-
getMethods
-
getMethod
Attempts to retrieve the method with the given subSignature. This method may throw an AmbiguousStateException if there are more than one method with the given subSignature. If no method with the given is found, null is returned. -
getField
Attemtps to retrieve the field with the given FieldSubSignature. -
getField
Returns the field of this class with the given name. Throws a ResolveException if there is more than one field with the given name. Returns null if no field with the given name exists. -
getMethod
public @NonNull Optional<? extends SootMethod> getMethod(@NonNull String name, @NonNull Iterable<? extends Type> parameterTypes) Attempts to retrieve the method with the given name and parameters. This method may throw an ResolveException if there is more than one method with the given name and parameter. -
getMethodsByName
Attempts to retrieve the method with the given name. This method will return an empty Set if there is no method with the given name.- Parameters:
name
- the name of the method- Returns:
- a set of methods that have the given name
-