Class ModuleMultiReleaseJarAnalysisInputLocation
java.lang.Object
sootup.java.bytecode.frontend.inputlocation.PathBasedAnalysisInputLocation
sootup.java.bytecode.frontend.inputlocation.ArchiveBasedAnalysisInputLocation
sootup.java.bytecode.frontend.inputlocation.MultiReleaseJarAnalysisInputLocation
sootup.java.bytecode.frontend.inputlocation.ModuleMultiReleaseJarAnalysisInputLocation
- All Implemented Interfaces:
AutoCloseable,AnalysisInputLocation,ModuleInfoAnalysisInputLocation
public class ModuleMultiReleaseJarAnalysisInputLocation
extends MultiReleaseJarAnalysisInputLocation
implements ModuleInfoAnalysisInputLocation
This AnalysisInputLocation models MultiRelease Jars or Directories if path points to a directory
that is not packed into a jar see https://openjdk.org/jeps/238#Modular_multi-release_JAR_files
-
Field Summary
Fields inherited from class sootup.java.bytecode.frontend.inputlocation.MultiReleaseJarAnalysisInputLocation
DEFAULT_VERSION, inputLocationsFields inherited from class sootup.java.bytecode.frontend.inputlocation.ArchiveBasedAnalysisInputLocation
fileSystemCacheFields inherited from class sootup.java.bytecode.frontend.inputlocation.PathBasedAnalysisInputLocation
bodyInterceptors, ignoredPaths, path, sourceType -
Constructor Summary
ConstructorsConstructorDescriptionModuleMultiReleaseJarAnalysisInputLocation(@NonNull Path path, @NonNull SourceType srcType, int version) -
Method Summary
Modifier and TypeMethodDescriptionprotected ModuleInfoAnalysisInputLocationcreateAnalysisInputLocation(@NonNull Path path, SourceType sourceType, List<BodyInterceptor> bodyInterceptors) @NonNull Optional<JavaModuleInfo>getModuleInfo(@NonNull ModuleSignature sig, @NonNull View view) @NonNull Set<ModuleSignature>getModules(@NonNull View view) Stream<? extends SootClassSource>getModulesClassSources(@NonNull ModuleSignature moduleSignature, @NonNull View view) Methods inherited from class sootup.java.bytecode.frontend.inputlocation.MultiReleaseJarAnalysisInputLocation
equals, getBodyInterceptors, getClassSource, getClassSources, getLanguageVersions, getVersion, hashCode, isMultiReleaseJarMethods inherited from class sootup.java.bytecode.frontend.inputlocation.ArchiveBasedAnalysisInputLocation
closeMethods inherited from class sootup.java.bytecode.frontend.inputlocation.PathBasedAnalysisInputLocation
create, create, create, fromPath, getClassSourceInternal, getSingleClass, getSourceType, walkDirectoryMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface sootup.core.inputlocation.AnalysisInputLocation
close, getBodyInterceptors, getClassSource, getClassSources, getSourceType
-
Constructor Details
-
ModuleMultiReleaseJarAnalysisInputLocation
public ModuleMultiReleaseJarAnalysisInputLocation(@NonNull Path path, @NonNull SourceType srcType, int version)
-
-
Method Details
-
createAnalysisInputLocation
protected ModuleInfoAnalysisInputLocation createAnalysisInputLocation(@NonNull Path path, SourceType sourceType, List<BodyInterceptor> bodyInterceptors) - Overrides:
createAnalysisInputLocationin classMultiReleaseJarAnalysisInputLocation
-
getModulesClassSources
public Stream<? extends SootClassSource> getModulesClassSources(@NonNull ModuleSignature moduleSignature, @NonNull View view) - Specified by:
getModulesClassSourcesin interfaceModuleInfoAnalysisInputLocation
-
getModuleInfo
public @NonNull Optional<JavaModuleInfo> getModuleInfo(@NonNull ModuleSignature sig, @NonNull View view) - Specified by:
getModuleInfoin interfaceModuleInfoAnalysisInputLocation
-
getModules
- Specified by:
getModulesin interfaceModuleInfoAnalysisInputLocation
-