Next: , Previous: , Up: Expression Evaluator Types   [Index]


3.22.2.3 struct x1f4_attributes_type

typedef struct x1f4_attributes_type {
    int completion, terminator;
    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 {
        int (*get)(const char *, unsigned, const void *,
                   const struct x1f4_variable_type **, void **);
        const void *context;
    } variable_set;
    struct {
	int (*get)(void *, int, int, const struct x1f4_operator_type **);
	void *context;
    } implicit_set;
    struct {
	int (*get)(void *, int, int, const struct x1f4_linetext_type **);
	void *context;
    } composer_set;
    struct {
        struct x1f4_eerecord_type *eerecord_data;
    } bcollect_set;
    struct {
        void *fine;
    } transfer_set;
    struct {
        int (*free)(void *, void *), (*link)(void *, void **, unsigned),
            (*mode)(void *, void **, unsigned);
        void *context;
    } resource_set;
    struct {
        unsigned *s1st, *s2nd;
    } internal_set;
    struct {
        void *v1st, *v2nd;
    } datalink_set;
    struct {
	int type;
    } sequence_set;
    const struct x1f4_operator_type *const *operator1s, *const *operator2s;
} x1f4_attributes_type;

The struct x1f4_attributes_type record describes the expression interpretation context.

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

function_set

specifies the functions set as:

fix

the function specific execution context retriever method

See Per Function Execution Context.

get

the function look up method

See Defining Function Sets.

context

the function look up context

See Functions.

variable_set

specifies the variables set as:

get

the variable look up method

See Defining Variables.

context

the variable look up context

See Variables.

operator1s

specifies the prefix unary operators set

See Prefix Unary Operators.

operator2s

specifies the infix binary operators set

See Infix Binary Operators.

The fields that are interpreted only if so requested are:

completion

specifies textual expression completion syntax

See Completions.

See Expression Syntax.

terminator

indicates the character whose first occurence marks the textual expression completion

See Completions.

See Expression Syntax.

bcollect_set

specifies some parsing error collector as:

eerecord_data

the very error collector

See struct x1f4_eerecord_type.

See Error Reporting.

resource_set

specifies an alternate memory manager as:

free

a memory deallocation method

link

a memory allocation method

mode

a memory reallocation method

context

the memory management context

See Memory Allocator Construct.

See Replacing Default Memory Manager.

implicit_set

specifies the prefix unary operator converters set as:

get

the converter look up method

context

the converter look up context

See Operator Converters Set Definition.

composer_set

specifies the single parameter function converters set as:

get

the converter look up method

context

the converter look up context

See Function Converters Set Definition.

internal_set

specifies the maximum already recorded stack sizes that needs to be updated if exceeded as:

s1st

the first stack size maximum size record address

s2nd

the second stack size maximum size record address

See Managing Stacks.

datalink_set

specifies the addresses of the stack to be used as:

v1st

the first stack address

v2nd

the second stack address

See Managing Stacks.

transfer_set

specifies a function type mapper to be used as:

fine

the mapper object

See Function Pointers.

See Function Pointer Type Alloter.

sequence_set

specifies the usable expression type as:

type

the type id

See Intrinsic Types.

See Application Defined Types.

See x1f4_type_expression.

The expression parser will transform the expression by means of implicit conversions so that it evaluates to the specified type. If the type conversion is not possible the expression parsing is failed.

See Implicit Conversions.


Next: , Previous: , Up: Expression Evaluator Types   [Index]