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)"};
5 trace
.prev
= tracehead
; tracehead
= &trace
;
8 return_label0
: while(false);
9 tracehead
= trace
.prev
;
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*/;
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*/;
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)"};
30 trace
.prev
= tracehead
; tracehead
= &trace
;
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*/;
41 variable2
= variable3
;
43 variable1
= variable2
;
45 return_label1
: while(false);
46 tracehead
= trace
.prev
;
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)"};
53 trace
.prev
= tracehead
; tracehead
= &trace
;
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*/;
58 return_label2
: while(false);
59 tracehead
= trace
.prev
;
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)"};
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*/;
69 return_label3
: while(false);
70 tracehead
= trace
.prev
;
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)"};
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*/;
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*/;
86 return_label4
: while(false);
87 tracehead
= trace
.prev
;
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)"};
94 trace
.prev
= tracehead
; tracehead
= &trace
;
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*/;
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*/;
105 return_label5
: while(false);
106 tracehead
= trace
.prev
;
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)"};
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*/;
116 return_label6
: while(false);
117 tracehead
= trace
.prev
;
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)"};
124 trace
.prev
= tracehead
; tracehead
= &trace
;
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
;