1 /* This C header file is generated by NIT to compile modules and programs that requires ./metamodel/partial_order. */
2 #ifndef metamodel___partial_order_sep
3 #define metamodel___partial_order_sep
4 #include "standard._sep.h"
5 #include <nit_common.h>
7 extern const classtable_elt_t VFT_metamodel___partial_order___PartialOrder
[];
9 extern const classtable_elt_t VFT_metamodel___partial_order___PartialOrderElement
[];
10 extern const char LOCATE_metamodel___partial_order
[];
11 extern const int SFT_metamodel___partial_order
[];
12 #define ID_metamodel___partial_order___PartialOrder (SFT_metamodel___partial_order[0])
13 #define COLOR_metamodel___partial_order___PartialOrder (SFT_metamodel___partial_order[1])
14 #define ATTR_metamodel___partial_order___PartialOrder____elements(recv) ATTR(recv, (SFT_metamodel___partial_order[2] + 0))
15 #define ATTR_metamodel___partial_order___PartialOrder____elements_list(recv) ATTR(recv, (SFT_metamodel___partial_order[2] + 1))
16 #define ATTR_metamodel___partial_order___PartialOrder____roots(recv) ATTR(recv, (SFT_metamodel___partial_order[2] + 2))
17 #define INIT_TABLE_POS_metamodel___partial_order___PartialOrder (SFT_metamodel___partial_order[3] + 0)
18 #define CALL_metamodel___partial_order___PartialOrder___roots(recv) ((metamodel___partial_order___PartialOrder___roots_t)CALL((recv), (SFT_metamodel___partial_order[3] + 1)))
19 #define CALL_metamodel___partial_order___PartialOrder_____bra(recv) ((metamodel___partial_order___PartialOrder_____bra_t)CALL((recv), (SFT_metamodel___partial_order[3] + 2)))
20 #define CALL_metamodel___partial_order___PartialOrder___to_dot(recv) ((metamodel___partial_order___PartialOrder___to_dot_t)CALL((recv), (SFT_metamodel___partial_order[3] + 3)))
21 #define CALL_metamodel___partial_order___PartialOrder___to_dot_header(recv) ((metamodel___partial_order___PartialOrder___to_dot_header_t)CALL((recv), (SFT_metamodel___partial_order[3] + 4)))
22 #define CALL_metamodel___partial_order___PartialOrder___to_dot_node(recv) ((metamodel___partial_order___PartialOrder___to_dot_node_t)CALL((recv), (SFT_metamodel___partial_order[3] + 5)))
23 #define CALL_metamodel___partial_order___PartialOrder___to_dot_edge(recv) ((metamodel___partial_order___PartialOrder___to_dot_edge_t)CALL((recv), (SFT_metamodel___partial_order[3] + 6)))
24 #define CALL_metamodel___partial_order___PartialOrder___select_smallests(recv) ((metamodel___partial_order___PartialOrder___select_smallests_t)CALL((recv), (SFT_metamodel___partial_order[3] + 7)))
25 #define CALL_metamodel___partial_order___PartialOrder___add(recv) ((metamodel___partial_order___PartialOrder___add_t)CALL((recv), (SFT_metamodel___partial_order[3] + 8)))
26 #define CALL_metamodel___partial_order___PartialOrder___has_all(recv) ((metamodel___partial_order___PartialOrder___has_all_t)CALL((recv), (SFT_metamodel___partial_order[3] + 9)))
27 #define CALL_metamodel___partial_order___PartialOrder___new_poe(recv) ((metamodel___partial_order___PartialOrder___new_poe_t)CALL((recv), (SFT_metamodel___partial_order[3] + 10)))
28 #define CALL_metamodel___partial_order___PartialOrder___add_to_smallests(recv) ((metamodel___partial_order___PartialOrder___add_to_smallests_t)CALL((recv), (SFT_metamodel___partial_order[3] + 11)))
29 #define CALL_metamodel___partial_order___PartialOrder___compute_smallers_for(recv) ((metamodel___partial_order___PartialOrder___compute_smallers_for_t)CALL((recv), (SFT_metamodel___partial_order[3] + 12)))
30 #define CALL_metamodel___partial_order___PartialOrder___init(recv) ((metamodel___partial_order___PartialOrder___init_t)CALL((recv), (SFT_metamodel___partial_order[3] + 13)))
31 #define ID_metamodel___partial_order___PartialOrderElement (SFT_metamodel___partial_order[4])
32 #define COLOR_metamodel___partial_order___PartialOrderElement (SFT_metamodel___partial_order[5])
33 #define ATTR_metamodel___partial_order___PartialOrderElement____order(recv) ATTR(recv, (SFT_metamodel___partial_order[6] + 0))
34 #define ATTR_metamodel___partial_order___PartialOrderElement____value(recv) ATTR(recv, (SFT_metamodel___partial_order[6] + 1))
35 #define ATTR_metamodel___partial_order___PartialOrderElement____rank(recv) ATTR(recv, (SFT_metamodel___partial_order[6] + 2))
36 #define ATTR_metamodel___partial_order___PartialOrderElement____direct_greaters(recv) ATTR(recv, (SFT_metamodel___partial_order[6] + 3))
37 #define ATTR_metamodel___partial_order___PartialOrderElement____direct_smallers(recv) ATTR(recv, (SFT_metamodel___partial_order[6] + 4))
38 #define ATTR_metamodel___partial_order___PartialOrderElement____greaters(recv) ATTR(recv, (SFT_metamodel___partial_order[6] + 5))
39 #define ATTR_metamodel___partial_order___PartialOrderElement____greaters_and_self_cache(recv) ATTR(recv, (SFT_metamodel___partial_order[6] + 6))
40 #define ATTR_metamodel___partial_order___PartialOrderElement____smallers_last_length(recv) ATTR(recv, (SFT_metamodel___partial_order[6] + 7))
41 #define ATTR_metamodel___partial_order___PartialOrderElement____smallers_cache(recv) ATTR(recv, (SFT_metamodel___partial_order[6] + 8))
42 #define ATTR_metamodel___partial_order___PartialOrderElement____linear_extension_cache(recv) ATTR(recv, (SFT_metamodel___partial_order[6] + 9))
43 #define ATTR_metamodel___partial_order___PartialOrderElement____reverse_linear_extension_cache(recv) ATTR(recv, (SFT_metamodel___partial_order[6] + 10))
44 #define INIT_TABLE_POS_metamodel___partial_order___PartialOrderElement (SFT_metamodel___partial_order[7] + 0)
45 #define CALL_metamodel___partial_order___PartialOrderElement___order(recv) ((metamodel___partial_order___PartialOrderElement___order_t)CALL((recv), (SFT_metamodel___partial_order[7] + 1)))
46 #define CALL_metamodel___partial_order___PartialOrderElement___value(recv) ((metamodel___partial_order___PartialOrderElement___value_t)CALL((recv), (SFT_metamodel___partial_order[7] + 2)))
47 #define CALL_metamodel___partial_order___PartialOrderElement___rank(recv) ((metamodel___partial_order___PartialOrderElement___rank_t)CALL((recv), (SFT_metamodel___partial_order[7] + 3)))
48 #define CALL_metamodel___partial_order___PartialOrderElement___direct_greaters(recv) ((metamodel___partial_order___PartialOrderElement___direct_greaters_t)CALL((recv), (SFT_metamodel___partial_order[7] + 4)))
49 #define CALL_metamodel___partial_order___PartialOrderElement___direct_smallers(recv) ((metamodel___partial_order___PartialOrderElement___direct_smallers_t)CALL((recv), (SFT_metamodel___partial_order[7] + 5)))
50 #define CALL_metamodel___partial_order___PartialOrderElement___greaters(recv) ((metamodel___partial_order___PartialOrderElement___greaters_t)CALL((recv), (SFT_metamodel___partial_order[7] + 6)))
51 #define CALL_metamodel___partial_order___PartialOrderElement___greaters_and_self(recv) ((metamodel___partial_order___PartialOrderElement___greaters_and_self_t)CALL((recv), (SFT_metamodel___partial_order[7] + 7)))
52 #define CALL_metamodel___partial_order___PartialOrderElement___smallers(recv) ((metamodel___partial_order___PartialOrderElement___smallers_t)CALL((recv), (SFT_metamodel___partial_order[7] + 8)))
53 #define CALL_metamodel___partial_order___PartialOrderElement___linear_extension(recv) ((metamodel___partial_order___PartialOrderElement___linear_extension_t)CALL((recv), (SFT_metamodel___partial_order[7] + 9)))
54 #define CALL_metamodel___partial_order___PartialOrderElement___reverse_linear_extension(recv) ((metamodel___partial_order___PartialOrderElement___reverse_linear_extension_t)CALL((recv), (SFT_metamodel___partial_order[7] + 10)))
55 #define CALL_metamodel___partial_order___PartialOrderElement_____l(recv) ((metamodel___partial_order___PartialOrderElement_____l_t)CALL((recv), (SFT_metamodel___partial_order[7] + 11)))
56 #define CALL_metamodel___partial_order___PartialOrderElement_____leq(recv) ((metamodel___partial_order___PartialOrderElement_____leq_t)CALL((recv), (SFT_metamodel___partial_order[7] + 12)))
57 #define CALL_metamodel___partial_order___PartialOrderElement_____g(recv) ((metamodel___partial_order___PartialOrderElement_____g_t)CALL((recv), (SFT_metamodel___partial_order[7] + 13)))
58 #define CALL_metamodel___partial_order___PartialOrderElement_____geq(recv) ((metamodel___partial_order___PartialOrderElement_____geq_t)CALL((recv), (SFT_metamodel___partial_order[7] + 14)))
59 #define CALL_metamodel___partial_order___PartialOrderElement___register_direct_smallers(recv) ((metamodel___partial_order___PartialOrderElement___register_direct_smallers_t)CALL((recv), (SFT_metamodel___partial_order[7] + 15)))
60 #define CALL_metamodel___partial_order___PartialOrderElement___init(recv) ((metamodel___partial_order___PartialOrderElement___init_t)CALL((recv), (SFT_metamodel___partial_order[7] + 16)))
61 val_t
metamodel___partial_order___PartialOrder___roots(val_t p0
);
62 typedef val_t (*metamodel___partial_order___PartialOrder___roots_t
)(val_t p0
);
63 val_t
metamodel___partial_order___PartialOrder___is_empty(val_t p0
);
64 typedef val_t (*metamodel___partial_order___PartialOrder___is_empty_t
)(val_t p0
);
65 val_t
metamodel___partial_order___PartialOrder___length(val_t p0
);
66 typedef val_t (*metamodel___partial_order___PartialOrder___length_t
)(val_t p0
);
67 val_t
metamodel___partial_order___PartialOrder___first(val_t p0
);
68 typedef val_t (*metamodel___partial_order___PartialOrder___first_t
)(val_t p0
);
69 val_t
metamodel___partial_order___PartialOrder___has(val_t p0
, val_t p1
);
70 typedef val_t (*metamodel___partial_order___PartialOrder___has_t
)(val_t p0
, val_t p1
);
71 val_t
metamodel___partial_order___PartialOrder___has_only(val_t p0
, val_t p1
);
72 typedef val_t (*metamodel___partial_order___PartialOrder___has_only_t
)(val_t p0
, val_t p1
);
73 val_t
metamodel___partial_order___PartialOrder___count(val_t p0
, val_t p1
);
74 typedef val_t (*metamodel___partial_order___PartialOrder___count_t
)(val_t p0
, val_t p1
);
75 val_t
metamodel___partial_order___PartialOrder___iterator(val_t p0
);
76 typedef val_t (*metamodel___partial_order___PartialOrder___iterator_t
)(val_t p0
);
77 val_t
metamodel___partial_order___PartialOrder_____bra(val_t p0
, val_t p1
);
78 typedef val_t (*metamodel___partial_order___PartialOrder_____bra_t
)(val_t p0
, val_t p1
);
79 val_t
metamodel___partial_order___PartialOrder___to_dot(val_t p0
);
80 typedef val_t (*metamodel___partial_order___PartialOrder___to_dot_t
)(val_t p0
);
81 typedef void (*CLOS_OC_metamodel___partial_order___PartialOrder___to_dot_1_0
)(struct stack_frame_t
*);
82 void OC_metamodel___partial_order___PartialOrder___to_dot_1(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
83 typedef void (*OC_metamodel___partial_order___PartialOrder___to_dot_1_t
)(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
84 val_t
metamodel___partial_order___PartialOrder___to_dot_header(val_t p0
);
85 typedef val_t (*metamodel___partial_order___PartialOrder___to_dot_header_t
)(val_t p0
);
86 val_t
metamodel___partial_order___PartialOrder___to_dot_node(val_t p0
, val_t p1
);
87 typedef val_t (*metamodel___partial_order___PartialOrder___to_dot_node_t
)(val_t p0
, val_t p1
);
88 val_t
metamodel___partial_order___PartialOrder___to_dot_edge(val_t p0
, val_t p1
, val_t p2
);
89 typedef val_t (*metamodel___partial_order___PartialOrder___to_dot_edge_t
)(val_t p0
, val_t p1
, val_t p2
);
90 val_t
metamodel___partial_order___PartialOrder___select_smallests(val_t p0
, val_t p1
);
91 typedef val_t (*metamodel___partial_order___PartialOrder___select_smallests_t
)(val_t p0
, val_t p1
);
92 typedef void (*CLOS_OC_metamodel___partial_order___PartialOrder___select_smallests_2_0
)(struct stack_frame_t
*);
93 void OC_metamodel___partial_order___PartialOrder___select_smallests_2(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
94 typedef void (*OC_metamodel___partial_order___PartialOrder___select_smallests_2_t
)(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
95 val_t
metamodel___partial_order___PartialOrder___add(val_t p0
, val_t p1
, val_t p2
);
96 typedef val_t (*metamodel___partial_order___PartialOrder___add_t
)(val_t p0
, val_t p1
, val_t p2
);
97 val_t
metamodel___partial_order___PartialOrder___has_all(val_t p0
, val_t p1
);
98 typedef val_t (*metamodel___partial_order___PartialOrder___has_all_t
)(val_t p0
, val_t p1
);
99 typedef void (*CLOS_OC_metamodel___partial_order___PartialOrder___has_all_1_0
)(struct stack_frame_t
*);
100 void OC_metamodel___partial_order___PartialOrder___has_all_1(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
101 typedef void (*OC_metamodel___partial_order___PartialOrder___has_all_1_t
)(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
102 val_t
metamodel___partial_order___PartialOrder___new_poe(val_t p0
, val_t p1
, val_t p2
);
103 typedef val_t (*metamodel___partial_order___PartialOrder___new_poe_t
)(val_t p0
, val_t p1
, val_t p2
);
104 val_t
metamodel___partial_order___PartialOrder___add_to_smallests(val_t p0
, val_t p1
, val_t p2
, val_t p3
);
105 typedef val_t (*metamodel___partial_order___PartialOrder___add_to_smallests_t
)(val_t p0
, val_t p1
, val_t p2
, val_t p3
);
106 void metamodel___partial_order___PartialOrder___compute_smallers_for(val_t p0
, val_t p1
, val_t p2
);
107 typedef void (*metamodel___partial_order___PartialOrder___compute_smallers_for_t
)(val_t p0
, val_t p1
, val_t p2
);
108 typedef void (*CLOS_OC_metamodel___partial_order___PartialOrder___compute_smallers_for_1_0
)(struct stack_frame_t
*);
109 void OC_metamodel___partial_order___PartialOrder___compute_smallers_for_1(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
110 typedef void (*OC_metamodel___partial_order___PartialOrder___compute_smallers_for_1_t
)(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
111 void metamodel___partial_order___PartialOrder___init(val_t p0
, int* init_table
);
112 typedef void (*metamodel___partial_order___PartialOrder___init_t
)(val_t p0
, int* init_table
);
113 val_t
NEW_PartialOrder_metamodel___partial_order___PartialOrder___init();
114 val_t
metamodel___partial_order___PartialOrderElement___order(val_t p0
);
115 typedef val_t (*metamodel___partial_order___PartialOrderElement___order_t
)(val_t p0
);
116 val_t
metamodel___partial_order___PartialOrderElement___value(val_t p0
);
117 typedef val_t (*metamodel___partial_order___PartialOrderElement___value_t
)(val_t p0
);
118 val_t
metamodel___partial_order___PartialOrderElement___rank(val_t p0
);
119 typedef val_t (*metamodel___partial_order___PartialOrderElement___rank_t
)(val_t p0
);
120 val_t
metamodel___partial_order___PartialOrderElement___direct_greaters(val_t p0
);
121 typedef val_t (*metamodel___partial_order___PartialOrderElement___direct_greaters_t
)(val_t p0
);
122 val_t
metamodel___partial_order___PartialOrderElement___direct_smallers(val_t p0
);
123 typedef val_t (*metamodel___partial_order___PartialOrderElement___direct_smallers_t
)(val_t p0
);
124 val_t
metamodel___partial_order___PartialOrderElement___greaters(val_t p0
);
125 typedef val_t (*metamodel___partial_order___PartialOrderElement___greaters_t
)(val_t p0
);
126 val_t
metamodel___partial_order___PartialOrderElement___greaters_and_self(val_t p0
);
127 typedef val_t (*metamodel___partial_order___PartialOrderElement___greaters_and_self_t
)(val_t p0
);
128 val_t
metamodel___partial_order___PartialOrderElement___smallers(val_t p0
);
129 typedef val_t (*metamodel___partial_order___PartialOrderElement___smallers_t
)(val_t p0
);
130 val_t
metamodel___partial_order___PartialOrderElement___linear_extension(val_t p0
);
131 typedef val_t (*metamodel___partial_order___PartialOrderElement___linear_extension_t
)(val_t p0
);
132 val_t
metamodel___partial_order___PartialOrderElement___reverse_linear_extension(val_t p0
);
133 typedef val_t (*metamodel___partial_order___PartialOrderElement___reverse_linear_extension_t
)(val_t p0
);
134 val_t
metamodel___partial_order___PartialOrderElement_____l(val_t p0
, val_t p1
);
135 typedef val_t (*metamodel___partial_order___PartialOrderElement_____l_t
)(val_t p0
, val_t p1
);
136 val_t
metamodel___partial_order___PartialOrderElement_____leq(val_t p0
, val_t p1
);
137 typedef val_t (*metamodel___partial_order___PartialOrderElement_____leq_t
)(val_t p0
, val_t p1
);
138 val_t
metamodel___partial_order___PartialOrderElement_____g(val_t p0
, val_t p1
);
139 typedef val_t (*metamodel___partial_order___PartialOrderElement_____g_t
)(val_t p0
, val_t p1
);
140 val_t
metamodel___partial_order___PartialOrderElement_____geq(val_t p0
, val_t p1
);
141 typedef val_t (*metamodel___partial_order___PartialOrderElement_____geq_t
)(val_t p0
, val_t p1
);
142 void metamodel___partial_order___PartialOrderElement___register_direct_smallers(val_t p0
, val_t p1
);
143 typedef void (*metamodel___partial_order___PartialOrderElement___register_direct_smallers_t
)(val_t p0
, val_t p1
);
144 void metamodel___partial_order___PartialOrderElement___init(val_t p0
, val_t p1
, val_t p2
, val_t p3
, int* init_table
);
145 typedef void (*metamodel___partial_order___PartialOrderElement___init_t
)(val_t p0
, val_t p1
, val_t p2
, val_t p3
, int* init_table
);
146 void OC_metamodel___partial_order___PartialOrderElement___init_1(struct stack_frame_t
*closctx
, val_t p0
);
147 typedef void (*OC_metamodel___partial_order___PartialOrderElement___init_1_t
)(struct stack_frame_t
*closctx
, val_t p0
);
148 val_t
NEW_PartialOrderElement_metamodel___partial_order___PartialOrderElement___init(val_t p0
, val_t p1
, val_t p2
);