Class JavaInnerClassInfo

java.lang.Object
sootup.java.core.JavaInnerClassInfo

public final class JavaInnerClassInfo extends Object
An immutable entry of a classfile InnerClasses attribute.
  • Constructor Details

    • JavaInnerClassInfo

      public JavaInnerClassInfo(@NonNull JavaClassType innerClass, @Nullable JavaClassType outerClass, @Nullable String innerName, int accessFlags)
      Parameters:
      innerClass - the class described by this entry
      outerClass - the declaring class for a member class, or null for a local or anonymous class
      innerName - the simple name, or null for an anonymous class
      accessFlags - the unmodified inner_class_access_flags bits
  • Method Details

    • getInnerClass

      public @NonNull JavaClassType getInnerClass()
    • getOuterClass

      public @NonNull Optional<JavaClassType> getOuterClass()
      Returns the recorded outer class, absent for local and anonymous classes.
    • getInnerName

      public @NonNull Optional<String> getInnerName()
      Returns the simple name, or an empty optional for an anonymous class.
    • getAccessFlags

      public int getAccessFlags()
      Returns the raw inner_class_access_flags bits, including member visibility and static.
    • equals

      public boolean equals(@Nullable Object other)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object