Documentation ¶
Index ¶
- Constants
- type Array
- func (a *Array) Contents() string
- func (a *Array) Dump() string
- func (a *Array) ID() int
- func (a *Array) Index() string
- func (a *Array) Info() Info
- func (a *Array) MarshalJSON() ([]byte, error)
- func (a *Array) Name() string
- func (a *Array) ParentID() int
- func (a *Array) String() string
- func (a *Array) Type() string
- type CTF
- type Const
- type Enum
- type Float
- func (f *Float) Bits() uint32
- func (f *Float) Dump() string
- func (f *Float) Encoding() string
- func (f *Float) ID() int
- func (f *Float) Info() Info
- func (f *Float) MarshalJSON() ([]byte, error)
- func (f *Float) Name() string
- func (f *Float) Offset() uint32
- func (f *Float) ParentID() int
- func (f *Float) String() string
- func (f *Float) Type() string
- type Forward
- type Function
- func (f *Function) Args() string
- func (f *Function) Dump() string
- func (f *Function) ID() int
- func (f *Function) Info() Info
- func (f *Function) MarshalJSON() ([]byte, error)
- func (f *Function) Name() string
- func (f *Function) ParentID() int
- func (f *Function) Return() string
- func (f *Function) String() string
- func (f *Function) Type() string
- type Info
- type Integer
- func (i *Integer) Bits() uint32
- func (i *Integer) Dump() string
- func (i *Integer) Encoding() string
- func (i *Integer) ID() int
- func (i *Integer) Info() Info
- func (i *Integer) MarshalJSON() ([]byte, error)
- func (i *Integer) Name() string
- func (i *Integer) Offset() uint32
- func (i *Integer) ParentID() int
- func (i *Integer) String() string
- func (i *Integer) Type() string
- type Member
- type Pointer
- func (p *Pointer) Dump() string
- func (p *Pointer) ID() int
- func (p *Pointer) Info() Info
- func (p *Pointer) MarshalJSON() ([]byte, error)
- func (p *Pointer) Name() string
- func (p *Pointer) ParentID() int
- func (p *Pointer) Reference() string
- func (p *Pointer) String() string
- func (p *Pointer) Type() string
- type PtrAuth
- func (p *PtrAuth) Dump() string
- func (p *PtrAuth) ID() int
- func (p *PtrAuth) Info() Info
- func (p *PtrAuth) MarshalJSON() ([]byte, error)
- func (p *PtrAuth) Name() string
- func (p *PtrAuth) ParentID() int
- func (p *PtrAuth) Reference() string
- func (p *PtrAuth) String() string
- func (p *PtrAuth) Type() string
- type Restrict
- func (p *Restrict) Dump() string
- func (p *Restrict) ID() int
- func (p *Restrict) Info() Info
- func (p *Restrict) MarshalJSON() ([]byte, error)
- func (p *Restrict) Name() string
- func (p *Restrict) ParentID() int
- func (p *Restrict) Reference() string
- func (p *Restrict) String() string
- func (p *Restrict) Type() string
- type Struct
- type Type
- type Typedef
- func (p *Typedef) Dump() string
- func (p *Typedef) ID() int
- func (p *Typedef) Info() Info
- func (p *Typedef) MarshalJSON() ([]byte, error)
- func (p *Typedef) Name() string
- func (p *Typedef) ParentID() int
- func (p *Typedef) Reference() string
- func (p *Typedef) String() string
- func (p *Typedef) Type() string
- type Union
- type Volatile
- func (p *Volatile) Dump() string
- func (p *Volatile) ID() int
- func (p *Volatile) Info() Info
- func (p *Volatile) MarshalJSON() ([]byte, error)
- func (p *Volatile) Name() string
- func (p *Volatile) ParentID() int
- func (p *Volatile) Reference() string
- func (p *Volatile) String() string
- func (p *Volatile) Type() string
Constants ¶
View Source
const ( MAGIC = 0xcff1 /* magic number identifying header */ MAX_TYPE = 0xfffffffe /* max type identifier value */ MAX_NAME = 0x7fffffff /* max offset into a string table */ MAX_VLEN = 0x3ff /* max struct, union, enum members or args */ MAX_INTOFF = 0xff /* max offset of intrinsic value in bits */ MAX_INTBITS = 0xffff /* max size of an intrinsic in bits */ /* See ctf_type_t */ MAX_SIZE = 0xfffffffe /* max size of a type in bytes */ LSIZE_SENT = 0xffffffff /* sentinel for ctt_size */ MAX_LSIZE = math.MaxUint64 /* data format version number */ VERSION_1 = 1 VERSION_2 = 2 VERSION_3 = 3 VERSION_4 = 4 VERSION = VERSION_4 /* current version */ F_COMPRESS = 0x1 /* data buffer is compressed */ F_NEWFUNCINFO = 0x2 /* New v3 func info section format. */ )
View Source
const ( /* * Values for TYPE_KIND(). If the kind has an associated data list, * INFO_VLEN() will extract the number of elements in the list, and * the type of each element is shown in the comments below. */ UNKNOWN kind = 0 /* unknown type (used for padding) */ INTEGER kind = 1 /* variant data is INT_DATA() (see below) */ FLOAT kind = 2 /* variant data is DATA() (see below) */ POINTER kind = 3 /* ctt_type is referenced type */ ARRAY kind = 4 /* variant data is single ctf_array_t */ FUNCTION kind = 5 /* ctt_type is return type, variant data is */ /* list of argument types (uint32_t's) */ STRUCT kind = 6 /* variant data is list of ctf_member_t's */ UNION kind = 7 /* variant data is list of ctf_member_t's */ ENUM kind = 8 /* variant data is list of ctf_enum_t's */ FORWARD kind = 9 /* no additional data; ctt_name is tag */ TYPEDEF kind = 10 /* ctt_type is referenced type */ VOLATILE kind = 11 /* ctt_type is base type */ CONST kind = 12 /* ctt_type is base type */ RESTRICT kind = 13 /* ctt_type is base type */ PTRAUTH kind = 14 /* variant data is PTRAUTH_DATA (see below) */ MAX kind = 31 /* Maximum possible K_* value */ )
View Source
const ( SIGNED intEncoding = 0x01 /* integer is signed (otherwise unsigned) */ CHAR intEncoding = 0x02 /* character display format */ BOOL intEncoding = 0x04 /* boolean display format */ VARARGS intEncoding = 0x08 /* varargs display format */ )
View Source
const ( SINGLE floatEncoding = 1 /* IEEE 32-bit float encoding */ DOUBLE floatEncoding = 2 /* IEEE 64-bit float encoding */ CPLX floatEncoding = 3 /* Complex encoding */ DCPLX floatEncoding = 4 /* Double complex encoding */ LDCPLX floatEncoding = 5 /* Long double complex encoding */ LDOUBLE floatEncoding = 6 /* Long double encoding */ INTRVL floatEncoding = 7 /* Interval (2x32-bit) encoding */ DINTRVL floatEncoding = 8 /* Double interval (2x64-bit) encoding */ LDINTRVL floatEncoding = 9 /* Long double interval (2x128-bit) encoding */ IMAGRY floatEncoding = 10 /* Imaginary (32-bit) encoding */ DIMAGRY floatEncoding = 11 /* Long imaginary (64-bit) encoding */ LDIMAGRY floatEncoding = 12 /* Long double imaginary (128-bit) encoding */ )
View Source
const LSTRUCT_THRESH = 8192
* Most structure members have bit offsets that can be expressed using a * short. Some don't. ctf_member_t is used for structs which cannot * contain any of these large offsets, whereas ctf_lmember_t is used in the * latter case. If ctt_size for a given struct is >= 8192 bytes, all members * will be stored as type ctf_lmember_t.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Array ¶
type Array struct {
// contains filtered or unexported fields
}
func (*Array) MarshalJSON ¶
type CTF ¶
type CTF struct { Header header `json:"header,omitempty"` Types map[int]Type `json:"types,omitempty"` Globals []global `json:"globals,omitempty"` Functions []function `json:"functions,omitempty"` // contains filtered or unexported fields }
CTF is the Compact ANSI-C Type Format object
func (*CTF) GetDataObjects ¶
GetDataObjects returns all the CTF data objects
func (*CTF) GetDataTypes ¶
GetDataTypes returns all the CTF data type definitions
func (*CTF) GetFunctions ¶
GetFunctions returns all the CTF function definitions
type Const ¶
type Const struct {
// contains filtered or unexported fields
}
func (*Const) MarshalJSON ¶
type Enum ¶
type Enum struct { Fields []enumField // contains filtered or unexported fields }
func (*Enum) MarshalJSON ¶
type Float ¶
type Float struct {
// contains filtered or unexported fields
}
func (*Float) MarshalJSON ¶
type Forward ¶
type Forward struct {
// contains filtered or unexported fields
}
func (*Forward) MarshalJSON ¶
type Function ¶
type Function struct {
// contains filtered or unexported fields
}
func (*Function) MarshalJSON ¶
type Integer ¶
type Integer struct {
// contains filtered or unexported fields
}
func (*Integer) MarshalJSON ¶
type Member ¶
type Member struct {
// contains filtered or unexported fields
}
func (Member) MarshalJSON ¶
type Pointer ¶
type Pointer struct {
// contains filtered or unexported fields
}
func (*Pointer) MarshalJSON ¶
type PtrAuth ¶
type PtrAuth struct {
// contains filtered or unexported fields
}
func (*PtrAuth) MarshalJSON ¶
type Restrict ¶
type Restrict struct {
// contains filtered or unexported fields
}
func (*Restrict) MarshalJSON ¶
type Struct ¶
type Struct struct { Fields []Member // contains filtered or unexported fields }
func (*Struct) MarshalJSON ¶
type Typedef ¶
type Typedef struct {
// contains filtered or unexported fields
}
func (*Typedef) MarshalJSON ¶
type Union ¶
type Union struct { Fields []Member // contains filtered or unexported fields }
func (*Union) MarshalJSON ¶
type Volatile ¶
type Volatile struct {
// contains filtered or unexported fields
}
func (*Volatile) MarshalJSON ¶
Click to show internal directories.
Click to hide internal directories.