x-engine-c v0.2.13
The C engine for x-lang
Loading...
Searching...
No Matches
x-eval-layout.h
Go to the documentation of this file.
1/* GENERATED by tools/contract/gen-base-layout.awk from tools/contract/base-layout.x.
2 * DO NOT EDIT -- edit the descriptor and regenerate (make gen-layout).
3 *
4 * Accessors are include-guarded (use normally). The construction
5 * skeleton is emitted only when X_EVAL_BUILD_TREE is defined before
6 * inclusion -- x_eval_make does that to build the empty pair tree;
7 * initial values are set by the hand-written init pass after it. */
8
9#ifndef X_EVAL_LAYOUT_H
10#define X_EVAL_LAYOUT_H
11#define x_eval_env(X) x_00(x_base(X))
12#define x_eval_field_env(X) x_0(x_eval_env(X)) /* direct */
13#define x_eval_field_env_root(X) x_1(x_eval_env(X)) /* direct */
14#define x_eval_ctrl(X) x_10(x_base(X))
15#define x_eval_field_save_stack(X) x_00(x_eval_ctrl(X)) /* direct */
16#define x_eval_field_error_handler(X) x_10(x_eval_ctrl(X)) /* cell */
17#define x_eval_field_tco_expr(X) x_01(x_eval_ctrl(X)) /* cell */
18#define x_eval_field_tco_env(X) x_11(x_eval_ctrl(X)) /* cell */
19#define x_eval_field_type_alist(X) x_00(x_base_field_io_group(X)) /* cell */
20#define x_eval_io_state(X) x_1(x_base_field_io_group(X))
21#define x_eval_field_line(X) x_0(x_eval_io_state(X)) /* cell */
22#define x_eval_field_true(X) x_01(x_eval_io_state(X)) /* cell */
23#define x_eval_field_false(X) x_11(x_eval_io_state(X)) /* cell */
24#define x_eval_field_profile_evals(X) x_01(x_base_field_profile(X)) /* cell */
25#define x_eval_field_profile_tco(X) x_011(x_base_field_profile(X)) /* cell */
26#define x_eval_field_profile_assoc_calls(X) x_0111(x_base_field_profile(X)) /* cell */
27#define x_eval_field_profile_assoc_steps(X) x_0111(x_1(x_base_field_profile(X))) /* cell */
28#define x_eval_field_profile_sym_find_calls(X) x_0111(x_11(x_base_field_profile(X))) /* cell */
29#define x_eval_field_profile_sym_find_steps(X) x_0111(x_111(x_base_field_profile(X))) /* cell */
30#define x_eval_field_profile_gc_runs(X) x_0111(x_1111(x_base_field_profile(X))) /* cell */
31#define x_eval_field_profile_bst_hits(X) x_0111(x_1111(x_1(x_base_field_profile(X)))) /* cell */
32#define x_eval_field_profile_bst_misses(X) x_0111(x_1111(x_11(x_base_field_profile(X)))) /* cell */
33#define x_eval_state(X) x_111(x_base_field_meta_group(X))
34#define x_eval_field_eval_list(X) x_0(x_eval_state(X)) /* cell */
35#define x_eval_field_token_cache(X) x_01(x_eval_state(X)) /* cell */
36#define x_eval_field_sigint(X) x_011(x_eval_state(X)) /* cell */
37#define x_eval_field_err(X) x_0111(x_eval_state(X)) /* cell */
38#define x_eval_field_prims(X) x_0111(x_1(x_eval_state(X))) /* cell */
39#define x_eval_field_file(X) x_0111(x_11(x_eval_state(X))) /* cell */
40#define x_eval_field_err_line(X) x_0111(x_111(x_eval_state(X))) /* cell */
41#define x_eval_field_err_file(X) x_0111(x_1111(x_eval_state(X))) /* cell */
42#define x_eval_field_file_registry(X) x_1111(x_1111(x_eval_state(X))) /* cell */
43#endif /* X_EVAL_LAYOUT_H */
44
45#ifdef X_EVAL_BUILD_TREE
46 x_0(x_base(p_base)) = pair(pair(nil, nil), pair(pair(nil, pair(nil, nil)), pair(pair(nil, nil), pair(nil, nil))));
51#endif /* X_EVAL_BUILD_TREE */
#define x_base_field_io_group(X)
Definition x-base.h:86
#define x_base_field_profile(X)
Definition x-base.h:123
#define x_base_field_meta_group(X)
Definition x-base.h:120
#define x_00(X)
Definition x-obj.h:457
#define x_111(X)
Definition x-obj.h:468
#define x_1(X)
Definition x-obj.h:456
#define x_0(X)
Definition x-obj.h:455
#define x_base(X)
Definition x-base.h:72
#define nil
Definition x-eval.c:662
#define pair(X, Y)
Definition x-eval.c:663