Class AsmAnnotationClassSource

java.lang.Object
sootup.java.core.JavaSootClassSource
sootup.java.core.JavaAnnotationSootClassSource
sootup.java.bytecode.frontend.conversion.AsmAnnotationClassSource
All Implemented Interfaces:
SootClassSource

public class AsmAnnotationClassSource extends JavaAnnotationSootClassSource
  • Field Details

    • classNode

      protected final @NonNull org.objectweb.asm.tree.ClassNode classNode
  • Constructor Details

    • AsmAnnotationClassSource

      public AsmAnnotationClassSource(AnalysisInputLocation inputLocation, Path sourcePath, ClassType classType, @NonNull org.objectweb.asm.tree.ClassNode classNode)
  • Method Details

    • resolveMethods

      public @NonNull Collection<? extends SootMethod> resolveMethods() throws ResolveException
      Description copied from interface: SootClassSource
      Reads from the source to retrieve its methods. This may be an expensive operation.
      Throws:
      ResolveException
    • convertAnnotation

      protected static List<AnnotationUsage> convertAnnotation(List<org.objectweb.asm.tree.AnnotationNode> nodes)
    • resolveAnnotations

      protected Iterable<AnnotationUsage> resolveAnnotations()
      Specified by:
      resolveAnnotations in class JavaSootClassSource
    • resolveFields

      public @NonNull Collection<? extends SootField> resolveFields() throws ResolveException
      Description copied from interface: SootClassSource
      Reads from the source to retrieve its fields. This may be an expensive operation.
      Throws:
      ResolveException
    • resolveModifiers

      public @NonNull EnumSet<ClassModifier> resolveModifiers()
      Description copied from interface: SootClassSource
      Reads from the source to retrieve its modifiers. This may be an expensive operation.
    • resolveInterfaces

      public @NonNull Set<? extends ClassType> resolveInterfaces()
      Description copied from interface: SootClassSource
      Reads from the source to retrieve its directly implemented interfaces. This may be an expensive operation.
    • resolveSuperclass

      public @NonNull Optional<? extends ClassType> resolveSuperclass()
      Description copied from interface: SootClassSource
      Reads from the source to retrieve its superclass, if present. This may be an expensive operation.
    • resolveOuterClass

      public @NonNull Optional<? extends ClassType> resolveOuterClass()
      Description copied from interface: SootClassSource
      Reads from the source to retrieve its outer class, if this is an inner class. This may be an expensive operation.
      Returns:
    • resolvePosition

      public @NonNull Position resolvePosition()
      Description copied from interface: SootClassSource
      Reads from the source to retrieve its position in the source code. This may be an expensive operation.
    • toString

      public String toString()
      Overrides:
      toString in class Object