Next: struct x1f4_lxslip_type, Up: Executive Assembler Types [Index]
typedef struct x1f4_indexset_type { struct { void *text; } function_set; struct { void *text; } variable_set; struct { struct x1f4_composer_type *composer_data; unsigned miss; } composer_set; struct { struct x1f4_datatype_type *datatype_data; } datatype_set; struct { struct x1f4_nodetype_type *nodetype_data; unsigned miss; } nodetype_set; struct { void *fine; } transfer_set; struct { int (*deck)(void *, void **); struct x1f4_e2line_type e2line; void *less, *text; } autodeck_set; struct { struct x1f4_lxslip_type *lxslip_data; unsigned miss; } sliplong_set; struct { const struct x1f4_operator_type *const *operator1s, *const *operator2s; } operator_set; struct { struct x1f4_progress_type *progress_data; } traverse_set; struct { void *fine; } deprefix_set; struct { struct x1f4_linetext_type *linetext_data; struct x1f4_variable_type variable; } casecall_set; struct x1f4_frame_type autolink_set; struct x1f4_trans_type codelink_set; struct { struct x1f4_eelookup_type eelookup; } eelookup_set; } x1f4_indexset_type;
The struct x1f4_indexset_type
record describes an executive objects set.
The set is assembled and destroyed by the executive assembler and in between
may be used to construct executable representations for aime programs.
function_set
describes the functions set as:
text
the functions collection. The collection is organized as an associative array,
mapping function names for struct x1f4_function_type
function
definitions. The data structure recorded at text
is a libaime
named objects collection and may be operated via the named objects collection
routines.
See Named Objects Collections.
See struct x1f4_function_type.
The mapped function definition objects do not belong with the functions collection, they are not freed when the collection is destroyed and they do not need to be freed and should not need to be freed when they are removed from the collection. They do need to be accessible for as long as the function collection is in use. The functions collection may be edited, function definitions may be added, removed and modified.
variable_set
describes the variables set as:
text
the variables collection
datatype_set
describes the struct x1f4_datatype_type
data type definitions set as:
datatype_data
the null terminated struct x1f4_datatype_type
declarable type
definitions array. Here the null terminated means the last struct
x1f4_datatype_type
record in the array has its name
field set to
NULL
.
See Data Type Definition.
nodetype_set
describes the struct x1f4_nodetype_type
data type definitions set as:
nodetype_data
the array of struct x1f4_nodetype_type
record data type descriptions,
miss
long. The data type descriptions detail such data operations as
copying and freeing along data type identification (data type name and data
type id).
miss
the data types count
composer_set
describe the collected single parameter function constructors set as:
composer_data
the array of struct x1f4_composer_type
record single parameter function
constructor descriptions, miss
long.
miss
the constructors count
See x1f4_lock_indexset.
transfer_set
describes the function mapper as:
fine
the mapper object
See Function Pointers.
autodeck_set
describes the temporaries collector as:
deck
the temporaries disposal method. It expects the program execution content and the address at which the instant temporaries disposal context is recorded as arguments.
less
the temporaries collector proper
It is the object to use for the temporaries collection context in the
struct x1f4_a1_type
procedural program parsing context.
See struct x1f4_a1_type.
text
the instant temporaries disposal context
A temporaries collector definition is available only if a temporaries collector
was created, i.e. if a temporaries collector was not specified when
assembling the executive. If one was specified, less
will be set as
NULL
.
sliplong_set
describes the library objects set as:
lxslip_data
the array of assembled library object descriptions, in struct
x1f4_lxslip_type
definition
miss
the number of library object descriptions. It may be zero.
The assembled library object descriptions correspond the tilelong_set
library object constructors in the struct x1f4_textport_type
record: the
lengths of the two sets are the same, the assembled library object in position
X corresponds the library object constructor in position X.
See struct x1f4_textport_type.
More, the note
field in the struct x1f4_lxslip_type
assembled
library object descriptions corresponds the note
field in the
struct x1f4_lxtile_type
library object constructors.
operator_set
describes the operators sets as:
operator1s
the prefix unary operators set
The set will combine the application defined operators and the libaime set of prefix unary operators.
operator2s
the infix binary operators set
The set will combine the application defined operators and the libaime set of infix binary operators.
autolink_set
specifies the temporaries allocator.
See Temporaries.
eelookup_set
describes the name lookup context as:
eelookup
the data type name lookup context
traverse_set
describes the struct x1f4_progress_type
collection traversal mode
definitions set as:
progress_data
the null terminated struct x1f4_progress_type
traversal mode definitions
array. Here the null terminated means the last struct
x1f4_progress_type
record in the array has its count
field set to
0
.
deprefix_set
specifies the strippable function prefixes collection as:
fine
a type id to list of prefixes associative array.
The prefixes are introduced in the struct x1f4_deprefix_type
record
definition, with one null terminated array per type (the last record in the
array has its name
and size
fields set as NULL
and
0
respectively).
See Strippable Prefixes.
casecall_set
describes the ‘object’ data caller as:
linetext_data
the address of the ‘object’ caller function struct
x1f4_linetext_type
definition
See struct x1f4_linetext_type.
The function is the ‘call’ function of the trap library.
See Trap Library.
variable
the struct x1f4_variable_type
variable definition matching ‘object’
caller function. Its type
field is not set. linetext_data
may
be used for variable value.
The linetext_data
is the found ‘call’ function definition in the
function_set.text
function collection. It is assumed of the trap
library or having the same semantics. If no ‘call’ function definition
was found, linetext_data
is NULL
and variable
unset.
Next: struct x1f4_lxslip_type, Up: Executive Assembler Types [Index]