Next: struct x1f4_lxwide_type, Up: Library Construct Types [Index]
typedef struct x1f4_lxnote_type {
int (*bset)(void *, const struct x1f4_operator_type **),
(*cfix)(void *, unsigned, void *),
(*clip)(unsigned, const void *, struct x1f4_nodetype_type **, int *),
(*dset)(void *, const struct x1f4_datatype_type **),
(*fini)(void **), (*fold)(void *, unsigned *),
(*fset)(void *, const struct x1f4_linetext_type **),
(*lift)(void *, int, void **),
(*lock)(void *, int, int, const struct x1f4_linetext_type **),
(*near)(void *),
(*pass)(void *, struct x1f4_progress_type **, char **),
(*seek)(const void *),
(*tile)(void **, unsigned, struct x1f4_lxwide_type *, unsigned,
const void *), (*tune)(void *),
(*uset)(void *, const struct x1f4_operator_type **),
(*vset)(void *, void **),
(*wrap)(void *, struct x1f4_indexset_type *);
unsigned bits;
} x1f4_lxnote_type;
The x1f4_lxnote_type record types the libaime library objects
operating interface.
The fields that are assumed always set are:
bitsis a bitwise OR of zero or more library operation interface flag bits.
bsetindicates the routine writing the struct x1f4_operator_type description
pointers of the infix binary operators provided by the first argument library
object at the address indicated by the second argument.
See struct x1f4_operator_type.
The method should return the number of copied pointers.
The field may be NULL if no infix binary operators are provided.
cfixindicates the routine setting the context attribute of the data type description registered with the first argument library object and indexed by the second argument to the third argument.
The context attribute corresponds the context field in the struct
x1f4_nodetype_type.
See struct x1f4_nodetype_type.
The set struct x1f4_nodetype_type record corresponds the data type
description indexed by the method second argument in the array of data type
descriptions supplied when building the library object.
The method should return 0.
The field may be NULL.
clipindicates the routine reserving data types codes and setting up the
struct x1f4_nodetype_type data type descriptions. The method is
expected to increment the struct x1f4_nodetype_type pointer at the
address indicated by its third argument and the type id at the address
indicated by its fourth argument by the number of data types provided by the
library object class. The in between struct x1f4_nodetype_type data
type descriptions are to be fully set up and the skipped type id codes used for
them. It is passed the class specific generation context pointer (a flags set
and a generation attributes record) as its first and second arguments.
See struct x1f4_nodetype_type.
The method should return 0.
The field may be NULL.
dsetindicates the routine storing the address of the null terminated array of data type definitions provided by the first argument library object at the address indicated by the second argument.
See struct x1f4_datatype_type.
See Data Type Definition.
Null terminated means here that the last data type definition in the array has
its name field set to NULL.
The method should return 0.
The method is available only when the seek method is also available.
finiindicates the routine dismantling the library object at the address stored at the address indicated by its only argument.
The method should return 0 for success, one of the defined error codes
for failure.
fsetindicates the routine storing the address of the null terminated array of contextualized function definitions provided by the first argument library object at the address indicated by the second argument.
The contextualized function definitions pair function definitions with their respective function specific execution contexts.
See struct x1f4_linetext_type.
See Per Function Execution Context.
Null terminated means here that the last function definition in the array has
its name field set to NULL.
The method should return 0.
liftindicates the routine storing the operation context of the data type provided by the first argument library object and identified by the second argument index at the address indicated by the third argument.
The method should return 0 for success, non zero for failure (invalid
data type index, etc).
The field may be NULL, in which case the operation context of the
provided data types is to be taken to be the library object itself.
nearindicates the routine describing the set of infix binary operators provided by the method only argument library object.
The method should return the number of operators.
The field may be NULL if no infix binary operators are provided.
seekindicates the routine describing the set of aime data types provided by the library object class. When called, it is passed the class specific generation context pointer as its sole argument.
The method should return the number of data types.
The field may be NULL if no data types are provided.
tileindicates the routine constructing the library object. The method constructs
the library object in the generic library object assembling context described
by its second and third arguments (a generation flags set and a struct
x1f4_lxwide_type record) and the class specific generation context described
by its fourth and fifth arguments (a generation flags set and a generation
attributes record of a matching type).
See Library Construct Generation Flags.
The method should return 0 for success, one of the defined error codes
for failure.
vsetindicates the routine adding the symbolic constant definitions provided by the first argument library object into the variables collection of which address is recorded at address indicated by method second argument. The variables collection address may be modified by the method call.
The method should return 0 for success, one of variables collection
construction errors for failure.
The field may be NULL.
wrapindicates the routine collecting the first argument library object dependencies
from the struct x1f4_indexset_type executive objects set indicated by
the second argument.
See struct x1f4_indexset_type.
The method should return 0 if all the dependencies have been collected
successfully, non zero otherwise.
The field may be NULL.
The fields that are interpreted only if marked set are:
See Library Operation Interface Flags.
foldindicates the routine describing the set of collection traversal modes provided
by the first argument library object and storing the memory requirements for
writing the traversal mode descriptions in excess of the struct
x1f4_progress_type records at the address indicated by the method second
argument.
The method should return the collection traversal modes.
lockindicates the routine constructing single parameter function implicit
convertors for the first argument library object, to the data type identified
by the second argument and from the data type identified by the third, and
storing the address of the converter struct x1f4_linetext_type
definition at the address indicated by the fourth argument.
passindicates the routine writing the struct x1f4_progress_type collection
traversal mode descriptions provided by the first argument library object. The
method is expected to increment the struct x1f4_progress_type pointer at
the address indicated by its second argument by the number of traversal modes
provided by the library object class. The in between struct
x1f4_progress_type traversal mode descriptions are to be fully set up. The
char pointer at the address indicated by its third argument is to be
incremented by the amount required to write the traversal mode descriptions in
excess of the struct x1f4_progress_type records.
The method should return 0 for success, one of the defined error codes
for failure.
tuneindicates the routine describing the set of prefix unary operators provided by the method only argument library object.
The method should return the number of operators.
usetindicates the routine writing the struct x1f4_operator_type description
pointers of the prefix unary operators provided by the first argument library
object at the address indicated by the second argument.
See struct x1f4_operator_type.
The method should return the number of copied pointers.
Next: struct x1f4_lxwide_type, Up: Library Construct Types [Index]