Class NativeStructType

java.lang.Object
de.intarsys.nativec.type.NativeType
de.intarsys.nativec.type.NativeStructType
All Implemented Interfaces:
INativeType

public class NativeStructType extends NativeType
The meta class implementation
  • Constructor Details

    • NativeStructType

      protected NativeStructType()
    • NativeStructType

      protected NativeStructType(Class<? extends NativeStruct> instanceClass)
  • Method Details

    • declare

      public StructMember declare(String name, INativeType declaration)
      Declare a new member for the struct.
      Parameters:
      name - The name of the new member slot.
      declaration - The type declaration for the slot
    • getByteBoundary

      public int getByteBoundary()
    • getByteCount

      public int getByteCount()
      Description copied from interface: INativeType
      The size of the type in c memory.
      Specified by:
      getByteCount in interface INativeType
      Overrides:
      getByteCount in class NativeType
      Returns:
      The size of the type in c memory.
    • getByteSize

      public int getByteSize()
      The total size of the StructDeclaration.
      Returns:
      The total size of the StructDeclaration.
    • getField

      public StructMember getField(String name)
    • getFields

      public List<StructMember> getFields()
      The collection of StructMember instances in declaration order.
      Returns:
      The collection of StructMember instances in declaration order.
    • getFieldsSize

      public int getFieldsSize()
    • getNativeObject

      public INativeObject getNativeObject(NativeStruct struct, String name)
    • getPacking

      public int getPacking()
    • getPreferredBoundary

      public int getPreferredBoundary()
      Description copied from interface: INativeType
      The boundary where this type as a struct member would want to be aligned. A structure can override this value with packing.
      Returns:
      The preferred alignment boundary.
    • setPacking

      public void setPacking(int pPacking)
    • toString

      public String toString()
      Overrides:
      toString in class Object