public interface

IStructureTypeField

com.pnfsoftware.jeb.core.units.code.asm.type.IStructureTypeField

Summary

Public Methods
abstract int getAlignment()
Get the alignment requirement for this field.
abstract int getBitend()
Reserved for bit fields.
abstract int getBitsize()
Reserved for bit fields.
abstract int getBitstart()
Reserved for bit fields.
abstract int getLastOffset()
Convenience method returning the end offset (exclusive) of the field.
abstract String getName(boolean includeBitfield)
Get the field name.
abstract String getName()
Get the field name.
abstract int getOffset()
Get the field offset within the structure.
abstract int getSize()
Get the field effective size (not counting padding, ie following gap bytes) in bytes.
abstract INativeType getType()
Get the field type.
abstract boolean isBitfield()
Determine if this field is a bit field.
abstract boolean isSynthetic()
A synthetic field is an artificial field that represents a gap item, ie the unused space between two real structure field.

Public Methods

public abstract int getAlignment ()

Get the alignment requirement for this field.

Returns
  • 0 if none, else a byte value specifying the alignment requirement for this field

public abstract int getBitend ()

Reserved for bit fields.

public abstract int getBitsize ()

Reserved for bit fields.

public abstract int getBitstart ()

Reserved for bit fields.

public abstract int getLastOffset ()

Convenience method returning the end offset (exclusive) of the field. The value returned is getOffset() + getSize(). If padding follows the field, the returned offset points to the first padding byte.

TODO: rename to getEndOffset

public abstract String getName (boolean includeBitfield)

Get the field name.

Returns
  • the name, never null

public abstract String getName ()

Get the field name.

Returns
  • the name, never null

public abstract int getOffset ()

Get the field offset within the structure. Note that is this is a union-field, the value returned will always be zero.

public abstract int getSize ()

Get the field effective size (not counting padding, ie following gap bytes) in bytes. If the field is a bitfield, the full field size is returned. Eg, "int a:1" could return 4.

public abstract INativeType getType ()

Get the field type. A synthetic field has not type.

Returns
  • the type, or null for a synthetic field

public abstract boolean isBitfield ()

Determine if this field is a bit field.

public abstract boolean isSynthetic ()

A synthetic field is an artificial field that represents a gap item, ie the unused space between two real structure field.