First NIT release and new clean mercurial repository
[nit.git] / c_src / type_formal._sep.c
1 #include "type_formal._sep.h"
2 val_t type_formal___MMType___direct_type(val_t self) {
3 struct trace_t trace = {NULL, "type_formal::MMType::direct_type (src/metamodel//type_formal.nit:24,2--25:40)"};
4 val_t variable0;
5 trace.prev = tracehead; tracehead = &trace;
6 variable0 = self;
7 goto return_label0;
8 return_label0: while(false);
9 tracehead = trace.prev;
10 return variable0;
11 }
12 val_t type_formal___MMTypeFormal___name(val_t self) {
13 struct trace_t trace = {NULL, "type_formal::MMTypeFormal::name (src/metamodel//type_formal.nit:31,2--32:28)"};
14 trace.prev = tracehead; tracehead = &trace;
15 tracehead = trace.prev;
16 return ATTR_type_formal___MMTypeFormal____name( self) /*MMTypeFormal::_name*/;
17 }
18 val_t type_formal___MMTypeFormal___bound(val_t self) {
19 struct trace_t trace = {NULL, "type_formal::MMTypeFormal::bound (src/metamodel//type_formal.nit:34,2--35:29)"};
20 trace.prev = tracehead; tracehead = &trace;
21 tracehead = trace.prev;
22 return ATTR_type_formal___MMTypeFormal____bound( self) /*MMTypeFormal::_bound*/;
23 }
24 val_t type_formal___MMTypeFormal_____l(val_t self, val_t param0) {
25 struct trace_t trace = {NULL, "type_formal::MMTypeFormal::< (src/metamodel//type_formal.nit:37,2--76)"};
26 val_t variable0;
27 val_t variable1;
28 val_t variable2;
29 val_t variable3;
30 trace.prev = tracehead; tracehead = &trace;
31 variable0 = param0;
32 variable1 = TAG_Bool(!UNTAG_Bool(TAG_Bool(( variable0 /*t*/ == NIT_NULL /*null*/) || (( variable0 /*t*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable0 /*t*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable0 /*t*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable0 /*t*/,COLOR_kernel___Object_____eqeq))( variable0 /*t*/, NIT_NULL /*null*/) /*MMType::==*/)))))));
33 variable2 = variable1;
34 if (UNTAG_Bool(variable2)) { /* and */
35 variable2 = TAG_Bool(( variable0 /*t*/ == self) || (( variable0 /*t*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable0 /*t*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable0 /*t*/, self)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable0 /*t*/,COLOR_kernel___Object_____eqeq))( variable0 /*t*/, self) /*MMType::==*/)))));
36 variable3 = variable2;
37 if (!UNTAG_Bool(variable3)) { /* or */
38 variable3 = ATTR_type_formal___MMTypeFormal____bound( self) /*MMTypeFormal::_bound*/;
39 variable3 = ((static_type___MMType___is_supertype_t)CALL( variable0 /*t*/,COLOR_static_type___MMType___is_supertype))( variable0 /*t*/, variable3) /*MMType::is_supertype*/;
40 }
41 variable2 = variable3;
42 }
43 variable1 = variable2;
44 goto return_label1;
45 return_label1: while(false);
46 tracehead = trace.prev;
47 return variable1;
48 }
49 val_t type_formal___MMTypeFormal___is_supertype(val_t self, val_t param0) {
50 struct trace_t trace = {NULL, "type_formal::MMTypeFormal::is_supertype (src/metamodel//type_formal.nit:38,2--59)"};
51 val_t variable0;
52 val_t variable1;
53 trace.prev = tracehead; tracehead = &trace;
54 variable0 = param0;
55 variable1 = ATTR_type_formal___MMTypeFormal____bound( self) /*MMTypeFormal::_bound*/;
56 variable1 = ((static_type___MMType___is_supertype_t)CALL(variable1,COLOR_static_type___MMType___is_supertype))(variable1, variable0 /*t*/) /*MMType::is_supertype*/;
57 goto return_label2;
58 return_label2: while(false);
59 tracehead = trace.prev;
60 return variable1;
61 }
62 val_t type_formal___MMTypeFormal___direct_type(val_t self) {
63 struct trace_t trace = {NULL, "type_formal::MMTypeFormal::direct_type (src/metamodel//type_formal.nit:39,2--52)"};
64 val_t variable0;
65 trace.prev = tracehead; tracehead = &trace;
66 variable0 = ATTR_type_formal___MMTypeFormal____bound( self) /*MMTypeFormal::_bound*/;
67 variable0 = ((type_formal___MMType___direct_type_t)CALL(variable0,COLOR_type_formal___MMType___direct_type))(variable0) /*MMType::direct_type*/;
68 goto return_label3;
69 return_label3: while(false);
70 tracehead = trace.prev;
71 return variable0;
72 }
73 val_t type_formal___MMTypeFormal___local_class(val_t self) {
74 struct trace_t trace = {NULL, "type_formal::MMTypeFormal::local_class (src/metamodel//type_formal.nit:40,2--43:27)"};
75 val_t variable0;
76 trace.prev = tracehead; tracehead = &trace;
77 variable0 = ATTR_type_formal___MMTypeFormal____bound( self) /*MMTypeFormal::_bound*/;
78 variable0 = TAG_Bool((variable0 == NIT_NULL /*null*/) || ((variable0 != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL(variable0,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN(variable0, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL(variable0,COLOR_kernel___Object_____eqeq))(variable0, NIT_NULL /*null*/) /*MMType::==*/)))));
79 if (UNTAG_Bool(variable0)) { /*if*/
80 variable0 = NIT_NULL /*null*/;
81 goto return_label4;
82 }
83 variable0 = ATTR_type_formal___MMTypeFormal____bound( self) /*MMTypeFormal::_bound*/;
84 variable0 = ((static_type___MMType___local_class_t)CALL(variable0,COLOR_static_type___MMType___local_class))(variable0) /*MMType::local_class*/;
85 goto return_label4;
86 return_label4: while(false);
87 tracehead = trace.prev;
88 return variable0;
89 }
90 val_t type_formal___MMTypeFormal___select_property(val_t self, val_t param0) {
91 struct trace_t trace = {NULL, "type_formal::MMTypeFormal::select_property (src/metamodel//type_formal.nit:46,2--51:34)"};
92 val_t variable0;
93 val_t variable1;
94 trace.prev = tracehead; tracehead = &trace;
95 variable0 = param0;
96 variable1 = TAG_Bool(( variable0 /*g*/ == NIT_NULL /*null*/) || (( variable0 /*g*/ != NIT_NULL) && ((((kernel___Object_____eqeq_t)CALL( variable0 /*g*/,COLOR_kernel___Object_____eqeq))==kernel___Object_____eqeq)?(IS_EQUAL_NN( variable0 /*g*/, NIT_NULL /*null*/)):(UNTAG_Bool(((kernel___Object_____eqeq_t)CALL( variable0 /*g*/,COLOR_kernel___Object_____eqeq))( variable0 /*g*/, NIT_NULL /*null*/) /*MMGlobalProperty::==*/)))));
97 if (UNTAG_Bool(variable1)) { /*if*/
98 variable1 = NIT_NULL /*null*/;
99 goto return_label5;
100 } else { /*if*/
101 variable1 = ATTR_type_formal___MMTypeFormal____bound( self) /*MMTypeFormal::_bound*/;
102 variable1 = ((static_type___MMType___select_property_t)CALL(variable1,COLOR_static_type___MMType___select_property))(variable1, variable0 /*g*/) /*MMType::select_property*/;
103 goto return_label5;
104 }
105 return_label5: while(false);
106 tracehead = trace.prev;
107 return variable1;
108 }
109 val_t type_formal___MMTypeFormal___to_s(val_t self) {
110 struct trace_t trace = {NULL, "type_formal::MMTypeFormal::to_s (src/metamodel//type_formal.nit:55,2--37)"};
111 val_t variable0;
112 trace.prev = tracehead; tracehead = &trace;
113 variable0 = ATTR_type_formal___MMTypeFormal____name( self) /*MMTypeFormal::_name*/;
114 variable0 = ((symbol___Symbol___to_s_t)CALL(variable0,COLOR_string___Object___to_s))(variable0) /*Symbol::to_s*/;
115 goto return_label6;
116 return_label6: while(false);
117 tracehead = trace.prev;
118 return variable0;
119 }
120 void type_formal___MMTypeFormal___init(val_t self, val_t param0, val_t param1, int* init_table) {
121 struct trace_t trace = {NULL, "type_formal::MMTypeFormal::init (src/metamodel//type_formal.nit:57,2--60:16)"};
122 val_t variable0;
123 val_t variable1;
124 trace.prev = tracehead; tracehead = &trace;
125 variable0 = param0;
126 variable1 = param1;
127 if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_MMTypeFormal].i]) return;
128 ATTR_type_formal___MMTypeFormal____name( self) /*MMTypeFormal::_name*/ = variable0 /*name*/;
129 ATTR_type_formal___MMTypeFormal____bound( self) /*MMTypeFormal::_bound*/ = variable1 /*bound*/;
130 init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_MMTypeFormal].i] = 1;
131 tracehead = trace.prev;
132 return;
133 }