Interface IClassType

All Superinterfaces:
ICodeItem, ICodeType, INativeItem, INativeItemListenable, INativeType, IStructureType

@Ser public interface IClassType extends IStructureType
Interface to represent native class types.
  • Method Details

    • getClassItem

      INativeClassItem getClassItem()
      Returns:
    • getSupertypes

      Collection<? extends IClassType> getSupertypes()
      Returns:
    • getSubtypes

      Collection<? extends IClassType> getSubtypes()
      Returns:
    • getInstanceFields

      List<? extends IStructureTypeField> getInstanceFields()
      Returns:
    • getVirtualTables

      List<? extends IVirtualTableDefinition> getVirtualTables()
      Returns:
    • renameVirtualMethod

      boolean renameVirtualMethod(int tableIndex, int methodIndex, String name)
      Rename a virtual method consistently. Other relevant methods of the class hierarchy will be renamed as well.
      Parameters:
      tableIndex - virtual table index
      methodIndex - method index within the virtual table
      name - new name for the method
      Returns:
      success indicator
    • collectVirtualMethodOverrides

      boolean collectVirtualMethodOverrides(int tableIndex, int methodIndex, Collection<VirtualMethodCoordinates> overUp, Collection<VirtualMethodCoordinates> overDown)
      Gather the overrides and reverse-overrides of a virtual method.
      Parameters:
      tableIndex - virtual table index
      methodIndex - method index within the virtual table
      overUp - optional output sink; if non-null, will contain all ascending reverse-overrides (the current method is included, and will be the first element in the collection)
      overDown - optional output sink; if non-null, will contain all descending overrides (the current method is not included)
      Returns:
      success indicator (false means the provided method was not a virtual method of this class)