Package sootup.java.core
Class JavaSootClassSource
java.lang.Object
sootup.java.core.JavaSootClassSource
- All Implemented Interfaces:
SootClassSource
- Direct Known Subclasses:
AsmAnnotationClassSource,DexClassSource,OverridingJavaClassSource
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final AnalysisInputLocationprotected ClassTypeprotected final Path -
Constructor Summary
ConstructorsConstructorDescriptionJavaSootClassSource(@NonNull AnalysisInputLocation srcNamespace, @NonNull ClassType classSignature, @NonNull Path sourcePath) Creates and aSootClassSourcefor a specific source file.JavaSootClassSource(SootClassSource delegate) -
Method Summary
Modifier and TypeMethodDescription@NonNull JavaSootClassbuildClass(@NonNull SourceType sourceType) booleanEven if a the signature changes, the classource remains the same, e.g., if it is associated to an automatic module sinthashCode()protected abstract Iterable<AnnotationUsage>Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface sootup.core.frontend.SootClassSource
resolveFields, resolveInterfaces, resolveMethods, resolveModifiers, resolveOuterClass, resolvePosition, resolveSuperclass
-
Field Details
-
analysisInputLocation
-
classSignature
-
sourcePath
-
-
Constructor Details
-
JavaSootClassSource
public JavaSootClassSource(@NonNull AnalysisInputLocation srcNamespace, @NonNull ClassType classSignature, @NonNull Path sourcePath) Creates and aSootClassSourcefor a specific source file. The file should be passed asPathand can be located in an arbitraryFileSystem. Implementations should useFiles.newInputStream(Path, OpenOption...)(Path, OpenOption...)} to access the file.- Parameters:
srcNamespace- TheAnalysisInputLocationthat holds the given filesourcePath- Path to the source file of the to-be-createdSootClassSource. The given path has to exist and requires to be handled by thisClassProvider. Implementations might double check this if wanted.classSignature- the signature that has been used to resolve this class
-
JavaSootClassSource
-
-
Method Details
-
resolveAnnotations
-
buildClass
- Specified by:
buildClassin interfaceSootClassSource- Parameters:
sourceType- instantiates the Subclass of SootClassSource to create a *SootClass- Returns:
- a *SootClass
-
getClassType
- Specified by:
getClassTypein interfaceSootClassSource
-
getAnalysisInputLocation
- Specified by:
getAnalysisInputLocationin interfaceSootClassSource
-
getSourcePath
- Specified by:
getSourcePathin interfaceSootClassSource
-
equals
Even if a the signature changes, the classource remains the same, e.g., if it is associated to an automatic module s -
hashCode
public int hashCode()
-