Class TypeLayoutInfo

java.lang.Object
com.pnfsoftware.jeb.core.units.code.asm.type.TypeLayoutInfo

public class TypeLayoutInfo extends Object
Basic memory requirements (layout) for a type. Those objects are immutable type descriptor, and are used by calling convention objects.
  • Field Details

    • i1

      public static final TypeLayoutInfo i1
      An integer type fitting on a single slot (the size of the slot is architecture-dependant).
    • i2

      public static final TypeLayoutInfo i2
      An integer type fitting on two slots (the size of the slot is architecture-dependant).
    • f1

      public static final TypeLayoutInfo f1
      A floating type fitting on a single slot (the size of the slot is architecture-dependant).
    • f2

      public static final TypeLayoutInfo f2
      A floating type fitting on two slots (the size of the slot is architecture-dependant).
    • ptr

      public static final TypeLayoutInfo ptr
      A pointer type fitting on a single slot (the size of the slot is architecture-dependant).
  • Method Details

    • getSlotcount

      public int getSlotcount()
    • getCategory

      public TypeCategory getCategory()
    • i

      public static TypeLayoutInfo i(int slotcount)
      Create an integral entry.
      Parameters:
      slotcount -
      Returns:
    • f

      public static TypeLayoutInfo f(int slotcount)
      Create a floating point entry.
      Parameters:
      slotcount -
      Returns:
    • p

      public static TypeLayoutInfo p(int slotcount)
      Create a pointer entry.
      Parameters:
      slotcount - usually 1
      Returns:
    • v

      public static TypeLayoutInfo v(int slotcount)
      Create a vector-type entry.
      Parameters:
      slotcount -
      Returns:
    • c

      public static TypeLayoutInfo c(int slotcount)
      Create another entry type, usually used for composite types (structures and similar).
      Parameters:
      slotcount -
      Returns:
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • isInteger

      public boolean isInteger()
    • isFloat

      public boolean isFloat()
    • isPointer

      public boolean isPointer()
    • isVector

      public boolean isVector()
    • isComposite

      public boolean isComposite()