Next: , Up: Imperative Language Interpreter Types struct x1f4_c1_type

typedef struct x1f4_c1_type {
    int completion, detail;
    struct {
	int (*fix) (const void *, const struct x1f4_function_type *, void **),
	    (*get) (const char *, unsigned, const void *,
		    const struct x1f4_function_type **);
	const void *context;
    } function_set;
    struct {
	const void *context;
    } variable_set;
    struct {
	struct x1f4_c1record_type *c1record_data;
    } bcollect_set;
    struct {
	int (*free) (void *, void *), (*link) (void *, void **, unsigned),
	    (*mode) (void *, void **, unsigned);
	void *context;
    } resource_set;
    struct {
	int (*free) (void *, void *);
	void *data;
    } flattext_set;
    struct {
	void *context;
	const void *miss;
    } datatype_set;
    const struct x1f4_operator_type **operator1s, **operator2s;
    void *context;
} x1f4_c1_type;

The struct x1f4_c1_type describes the program parsing context.

The fields that are always interpreted by the program parsing functions are:

specifies the functions set as:
the function specific execution context retriever method

See Per Function Execution Contexts.

the function look up method
the function look up context

See Functions.

specifies the variables set as:
the variables collection to observe

See Variables Collections.

See Variables.

specifies the prefix unary operators set

See Prefix Unary Operators.

specifies the infix binary operators set

See Infix Binary Operators.

The fields that are interpreted only if so requested are:

See Imperative Language Interpreter Generation Flags.

specifies some parsing error collector as:
the very error collector

See struct x1f4_c1record_type.

See Imperative Program Parsing Error Reporting.

specifies the expression optimization context. It is passed as argument to the expression optimization routine and it is otherwise unused.

See x1f4_line_expression.

See Optimizing Expressions.

specifies the application defined declarable types as:
some general application defined declarable types context, a pointer passed to various methods in the application defined declarable type definitions and not used otherwise.

See struct x1f4_datatype_type.

the null terminated struct x1f4_datatype_type application defined 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.

See Application Defined Types.

specifies the string deallocation context as:
the method to employ for free deallocation, passed the string deallocation context (the data field in the flattext_set record) and the string to deallocate. Its return value is interpreted as a processing status, 0 for success, non zero for failure.
the string deallocation context, passed as the first argument to the string deallocation method (the free field in the flattext_set record), not interpreted otherwise.

See Execution Completion Cleanup.

The string data to deallocate making the object of current string deallocation topic is string data allocated during program execution, by the application supplied functions and operators. No string data is allocated by the program interpreter itself. This data is referred by string (`text') variables.

See Imperative Language Syntax.

See Intrinsic Types.

specifies an alternate memory manager as:
a memory deallocater method
a memory allocator method
a memory reallocator method
the memory management context

See Memory Allocator Construct.