Class ResolvedClass

java.lang.Object
de.mirkosertic.bytecoder.core.ir.ResolvedClass

public class ResolvedClass extends Object
  • Field Details

    • type

      public final org.objectweb.asm.Type type
    • classNode

      public final org.objectweb.asm.tree.ClassNode classNode
    • superClass

      public final ResolvedClass superClass
    • interfaces

      public final ResolvedClass[] interfaces
    • compileUnit

      public final CompileUnit compileUnit
    • directSubclasses

      public final Set<ResolvedClass> directSubclasses
    • resolvedMethods

      public final List<ResolvedMethod> resolvedMethods
    • resolvedFields

      public final List<ResolvedField> resolvedFields
    • needsInitialization

      boolean needsInitialization
    • classInitializer

      public ResolvedMethod classInitializer
    • isOpaqueReferenceType

      private Boolean isOpaqueReferenceType
    • isCallback

      private Boolean isCallback
  • Constructor Details

    • ResolvedClass

      public ResolvedClass(CompileUnit compileUnit, org.objectweb.asm.Type type, org.objectweb.asm.tree.ClassNode classNode, ResolvedClass superClass, ResolvedClass[] interfaces)
  • Method Details

    • isOpaqueReferenceType

      public boolean isOpaqueReferenceType()
    • isCallback

      public boolean isCallback()
    • requestInitialization

      public ResolvedClass requestInitialization(AnalysisStack analysisStack)
    • registerDirectSubclass

      public void registerDirectSubclass(ResolvedClass cl)
    • resolveMethod

      public ResolvedMethod resolveMethod(String methodName, org.objectweb.asm.Type methodType, AnalysisStack analysisStack)
    • resolveMethodInternal

      private ResolvedMethod resolveMethodInternal(String methodName, org.objectweb.asm.Type methodType, AnalysisStack analysisStack, boolean onlyImplementations)
    • resolveField

      public ResolvedField resolveField(String name, org.objectweb.asm.Type t)
    • requiresClassInitializer

      public boolean requiresClassInitializer()
    • finalizeLinkingHierarchy

      public void finalizeLinkingHierarchy(AnalysisStack analysisStack)
    • leafSubclasses

      public Set<ResolvedClass> leafSubclasses()
    • allTypesOf

      public Set<ResolvedClass> allTypesOf()
    • abstractResolvedMethods

      public Set<ResolvedMethod> abstractResolvedMethods()
    • abstractMethods

      public Set<org.objectweb.asm.tree.MethodNode> abstractMethods()
    • computeOpaqueReferenceTypeAndCallbackStatus

      public void computeOpaqueReferenceTypeAndCallbackStatus(AnalysisStack analysisStack)