Interface ICodeItem

All Known Subinterfaces:
IAliasType, IArrayType, IClassType, ICodeClass, ICodeData, ICodeField, ICodeInstruction, ICodeMethod, ICodePackage, ICodePrototype, ICodeString, ICodeType, IDexCallSite, IDexClass, IDexField, IDexItem, IDexMethod, IDexMethodHandle, IDexPackage, IDexString, IDexType, IEnumerationType, INativeClassDataItem, INativeClassItem, INativeContinuousItem, INativeDataItem, INativeFieldItem, INativeInstructionItem, INativeItem, INativeMemoryItem, INativeMethodDataItem, INativeMethodItem, INativeStringItem, INativeType, IPackage, IPrimitiveType, IPrototypeItem, IReferenceType, IStructureType, IWildcardPrototype, IWildcardType

public interface ICodeItem
Definition of a generic code object.
  • Field Details

  • Method Details

    • getItemId

      long getItemId()
      Get the item identifier.
      Returns:
      the item identifier
    • getIndex

      int getIndex()
      Get the item index. The meaning of the index is specific to the code unit produced the item.
      Returns:
      the item index
    • getAddress

      String getAddress(boolean effective)
      Get the item address.
      Parameters:
      effective -
      Returns:
      the item address
    • getAddress

      String getAddress()
      Get the item address.
      Returns:
      the item address
    • getName

      String getName(boolean effective)
      Get the item simple name.

      If the item is qualified, the non-qualified name should be returned.

      Parameters:
      effective - true to get the actual name, false to return the original name (if the unit allows the modification of items)
      Returns:
      the name
    • getName

      String getName()
      Get the item name. The effective name is returned.

      If the item is qualified, the non-qualified name should be returned.

      Returns:
      the effective name
    • getSignature

      String getSignature(boolean effective)
      Get the item signature.
      Parameters:
      effective - true to get the actual signature, false to return the original signature (if the unit allows the modification of items)
      Returns:
      the signature
    • getSignature

      String getSignature(boolean effective, boolean internal)
      Get the item signature.
      Parameters:
      effective - true to get the actual signature, false to return the original signature (if the unit allows the modification of items)
      internal - true to generate internal names (default); false to generate user-friendly signatures (may be the same as the internal signatures)
      Returns:
      the signature
    • getSignature

      String getSignature()
      Get the item signature. The effective name is returned.
      Returns:
      the effective signature
    • isInternal

      boolean isInternal()
      Determine if the item is internal or external. An internal item is defined within its unit, whereas an external item may just be a reference to an item defined in a separate unit.

      This is a convenience method that checks whether FLAG_INTERNAL is set.

      Returns:
      true if the item is internal
    • isArtificial

      boolean isArtificial()
      Determine if the item was part of the original code unit, or was added after processing complete (eg, by a third-party client).

      This is a convenience method that checks whether FLAG_ARTIFICIAL is set.

      Returns:
      true if the item is artificial
    • getGenericFlags

      int getGenericFlags()
      Get the canonicalized generic flags for that code item. Examples include access flags or structural flags.
      Returns:
      bit mask of ICodeItem.FLAG_* values