public class JavaSootClass extends SootClass<JavaSootClassSource>
classSignature, sourceType
classSource
Constructor and Description |
---|
JavaSootClass(JavaSootClassSource classSource,
SourceType sourceType) |
getInterfaces, getModifiers, getName, getOuterClass, getPosition, getSuperclass, getType, hasOuterClass, hasSuperclass, implementsInterface, isAbstract, isApplicationClass, isConcrete, isEnum, isFinal, isInnerClass, isInterface, isLibraryClass, isPhantomClass, isPrivate, isProtected, isPublic, isStatic, isSynchronized, print, toString, withClassSource, withSourceType
public JavaSootClass(JavaSootClassSource classSource, SourceType sourceType)
public boolean isJavaLibraryClass()
@Nonnull public Iterable<AnnotationUsage> getAnnotations(@Nonnull Optional<JavaView> view)
view
- @Nonnull public Set<? extends JavaSootMethod> getMethods()
getMethods
in class SootClass<JavaSootClassSource>
@Nonnull public Set<? extends JavaSootField> getFields()
getFields
in class SootClass<JavaSootClassSource>
@Nonnull public Optional<JavaSootField> getField(@Nonnull String name)
getField
in class AbstractClass<JavaSootClassSource>
@Nonnull public Optional<JavaSootField> getField(@Nonnull FieldSubSignature subSignature)
getField
in class AbstractClass<JavaSootClassSource>
@Nonnull public Optional<JavaSootMethod> getMethod(@Nonnull String name, @Nonnull Iterable<? extends Type> parameterTypes)
getMethod
in class AbstractClass<JavaSootClassSource>
@Nonnull public Optional<JavaSootMethod> getMethod(@Nonnull MethodSubSignature subSignature)
getMethod
in class AbstractClass<JavaSootClassSource>
@Nonnull public JavaSootClassSource getClassSource()
getClassSource
in class SootClass<JavaSootClassSource>
@Nonnull public JavaSootClass withOverridingClassSource(Function<OverridingJavaClassSource,OverridingJavaClassSource> overrider)
OverridingJavaClassSource
. This is useful to
change selected parts of a SootClass
without recreating a JavaSootClassSource
completely. OverridingJavaClassSource
allows for replacing specific parts of a class,
such as fields and methods.@Nonnull public JavaSootClass withReplacedMethod(@Nonnull SootMethod toReplace, @Nonnull SootMethod replacement)
@Nonnull public JavaSootClass withMethods(@Nonnull Collection<SootMethod> methods)
@Nonnull public JavaSootClass withReplacedField(@Nonnull SootField toReplace, @Nonnull SootField replacement)
@Nonnull public JavaSootClass withFields(@Nonnull Collection<SootField> fields)
@Nonnull public JavaSootClass withModifiers(@Nonnull Set<Modifier> modifiers)
@Nonnull public JavaSootClass withSuperclass(@Nonnull Optional<ClassType> superclass)
@Nonnull public JavaSootClass withOuterClass(@Nonnull Optional<ClassType> outerClass)
@Nonnull public JavaSootClass withPosition(@Nullable Position position)
Copyright © 2023 Soot OSS. All rights reserved.