1 /* This C header file is generated by NIT to compile modules and programs that requires ./metamodel/genericity. */
2 #ifndef metamodel___genericity_sep
3 #define metamodel___genericity_sep
4 #include "metamodel___type_formal._sep.h"
5 #include <nit_common.h>
7 extern const classtable_elt_t VFT_metamodel___genericity___MMTypeGeneric
[];
9 extern const classtable_elt_t VFT_metamodel___genericity___MMTypeFormalParameter
[];
10 extern const char LOCATE_metamodel___genericity
[];
11 extern const int SFT_metamodel___genericity
[];
12 #define ATTR_metamodel___genericity___MMLocalClass____types(recv) ATTR(recv, (SFT_metamodel___genericity[0] + 0))
13 #define ATTR_metamodel___genericity___MMLocalClass____formals_types(recv) ATTR(recv, (SFT_metamodel___genericity[0] + 1))
14 #define CALL_metamodel___genericity___MMLocalClass___get_formal(recv) ((metamodel___genericity___MMLocalClass___get_formal_t)CALL((recv), (SFT_metamodel___genericity[1] + 0)))
15 #define CALL_metamodel___genericity___MMLocalClass___register_formal(recv) ((metamodel___genericity___MMLocalClass___register_formal_t)CALL((recv), (SFT_metamodel___genericity[1] + 1)))
16 #define CALL_metamodel___genericity___MMLocalClass___get_instantiate_type(recv) ((metamodel___genericity___MMLocalClass___get_instantiate_type_t)CALL((recv), (SFT_metamodel___genericity[1] + 2)))
17 #define CALL_metamodel___genericity___MMLocalClass___formals_types(recv) ((metamodel___genericity___MMLocalClass___formals_types_t)CALL((recv), (SFT_metamodel___genericity[1] + 3)))
18 #define CALL_SUPER_metamodel___genericity___MMLocalClass___get_type(recv) ((metamodel___genericity___MMLocalClass___get_type_t)CALL((recv), (SFT_metamodel___genericity[1] + 4)))
19 #define CALL_metamodel___genericity___MMLocalClass___is_generic(recv) ((metamodel___genericity___MMLocalClass___is_generic_t)CALL((recv), (SFT_metamodel___genericity[1] + 5)))
20 #define CALL_metamodel___genericity___MMType___is_generic(recv) ((metamodel___genericity___MMType___is_generic_t)CALL((recv), (SFT_metamodel___genericity[2] + 0)))
21 #define ID_metamodel___genericity___MMTypeGeneric (SFT_metamodel___genericity[3])
22 #define COLOR_metamodel___genericity___MMTypeGeneric (SFT_metamodel___genericity[4])
23 #define ATTR_metamodel___genericity___MMTypeGeneric____params(recv) ATTR(recv, (SFT_metamodel___genericity[5] + 0))
24 #define INIT_TABLE_POS_metamodel___genericity___MMTypeGeneric (SFT_metamodel___genericity[6] + 0)
25 #define CALL_metamodel___genericity___MMTypeGeneric___params(recv) ((metamodel___genericity___MMTypeGeneric___params_t)CALL((recv), (SFT_metamodel___genericity[6] + 1)))
26 #define CALL_SUPER_metamodel___genericity___MMTypeGeneric___upcast_for(recv) ((metamodel___genericity___MMTypeGeneric___upcast_for_t)CALL((recv), (SFT_metamodel___genericity[6] + 2)))
27 #define CALL_metamodel___genericity___MMTypeGeneric___params_equals(recv) ((metamodel___genericity___MMTypeGeneric___params_equals_t)CALL((recv), (SFT_metamodel___genericity[6] + 3)))
28 #define CALL_SUPER_metamodel___genericity___MMTypeGeneric___to_s(recv) ((metamodel___genericity___MMTypeGeneric___to_s_t)CALL((recv), (SFT_metamodel___genericity[6] + 4)))
29 #define CALL_metamodel___genericity___MMTypeGeneric___is_subtype(recv) ((metamodel___genericity___MMTypeGeneric___is_subtype_t)CALL((recv), (SFT_metamodel___genericity[6] + 5)))
30 #define CALL_metamodel___genericity___MMTypeGeneric___init(recv) ((metamodel___genericity___MMTypeGeneric___init_t)CALL((recv), (SFT_metamodel___genericity[6] + 6)))
31 #define ID_metamodel___genericity___MMTypeFormalParameter (SFT_metamodel___genericity[7])
32 #define COLOR_metamodel___genericity___MMTypeFormalParameter (SFT_metamodel___genericity[8])
33 #define ATTR_metamodel___genericity___MMTypeFormalParameter____def_class(recv) ATTR(recv, (SFT_metamodel___genericity[9] + 0))
34 #define ATTR_metamodel___genericity___MMTypeFormalParameter____position(recv) ATTR(recv, (SFT_metamodel___genericity[9] + 1))
35 #define INIT_TABLE_POS_metamodel___genericity___MMTypeFormalParameter (SFT_metamodel___genericity[10] + 0)
36 #define CALL_metamodel___genericity___MMTypeFormalParameter___def_class(recv) ((metamodel___genericity___MMTypeFormalParameter___def_class_t)CALL((recv), (SFT_metamodel___genericity[10] + 1)))
37 #define CALL_metamodel___genericity___MMTypeFormalParameter___position(recv) ((metamodel___genericity___MMTypeFormalParameter___position_t)CALL((recv), (SFT_metamodel___genericity[10] + 2)))
38 #define CALL_metamodel___genericity___MMTypeFormalParameter___bound__eq(recv) ((metamodel___genericity___MMTypeFormalParameter___bound__eq_t)CALL((recv), (SFT_metamodel___genericity[10] + 3)))
39 #define CALL_metamodel___genericity___MMTypeFormalParameter___with_bound(recv) ((metamodel___genericity___MMTypeFormalParameter___with_bound_t)CALL((recv), (SFT_metamodel___genericity[10] + 4)))
40 #define CALL_metamodel___genericity___MMTypeFormalParameter___init(recv) ((metamodel___genericity___MMTypeFormalParameter___init_t)CALL((recv), (SFT_metamodel___genericity[10] + 5)))
41 val_t
metamodel___genericity___MMLocalClass___get_formal(val_t p0
, val_t p1
);
42 typedef val_t (*metamodel___genericity___MMLocalClass___get_formal_t
)(val_t p0
, val_t p1
);
43 void metamodel___genericity___MMLocalClass___register_formal(val_t p0
, val_t p1
);
44 typedef void (*metamodel___genericity___MMLocalClass___register_formal_t
)(val_t p0
, val_t p1
);
45 val_t
metamodel___genericity___MMLocalClass___get_instantiate_type(val_t p0
, val_t p1
);
46 typedef val_t (*metamodel___genericity___MMLocalClass___get_instantiate_type_t
)(val_t p0
, val_t p1
);
47 val_t
metamodel___genericity___MMLocalClass___formals_types(val_t p0
);
48 typedef val_t (*metamodel___genericity___MMLocalClass___formals_types_t
)(val_t p0
);
49 val_t
metamodel___genericity___MMLocalClass___get_type(val_t p0
);
50 typedef val_t (*metamodel___genericity___MMLocalClass___get_type_t
)(val_t p0
);
51 val_t
metamodel___genericity___MMLocalClass___is_generic(val_t p0
);
52 typedef val_t (*metamodel___genericity___MMLocalClass___is_generic_t
)(val_t p0
);
53 val_t
NEW_MMLocalClass_metamodel___abstractmetamodel___MMLocalClass___init(val_t p0
, val_t p1
, val_t p2
);
54 val_t
metamodel___genericity___MMType___is_generic(val_t p0
);
55 typedef val_t (*metamodel___genericity___MMType___is_generic_t
)(val_t p0
);
56 val_t
NEW_MMType_metamodel___static_type___MMType___init();
57 val_t
metamodel___genericity___MMTypeFormal___is_generic(val_t p0
);
58 typedef val_t (*metamodel___genericity___MMTypeFormal___is_generic_t
)(val_t p0
);
59 val_t
NEW_MMTypeFormal_metamodel___type_formal___MMTypeFormal___init(val_t p0
, val_t p1
);
60 val_t
metamodel___genericity___MMTypeSimpleClass___is_generic(val_t p0
);
61 typedef val_t (*metamodel___genericity___MMTypeSimpleClass___is_generic_t
)(val_t p0
);
62 val_t
NEW_MMTypeSimpleClass_metamodel___static_type___MMTypeSimpleClass___init(val_t p0
);
63 val_t
metamodel___genericity___MMTypeGeneric___params(val_t p0
);
64 typedef val_t (*metamodel___genericity___MMTypeGeneric___params_t
)(val_t p0
);
65 val_t
metamodel___genericity___MMTypeGeneric___is_generic(val_t p0
);
66 typedef val_t (*metamodel___genericity___MMTypeGeneric___is_generic_t
)(val_t p0
);
67 val_t
metamodel___genericity___MMTypeGeneric___is_supertype(val_t p0
, val_t p1
);
68 typedef val_t (*metamodel___genericity___MMTypeGeneric___is_supertype_t
)(val_t p0
, val_t p1
);
69 val_t
metamodel___genericity___MMTypeGeneric___upcast_for(val_t p0
, val_t p1
);
70 typedef val_t (*metamodel___genericity___MMTypeGeneric___upcast_for_t
)(val_t p0
, val_t p1
);
71 val_t
metamodel___genericity___MMTypeGeneric___for_module(val_t p0
, val_t p1
);
72 typedef val_t (*metamodel___genericity___MMTypeGeneric___for_module_t
)(val_t p0
, val_t p1
);
73 val_t
metamodel___genericity___MMTypeGeneric___adapt_to(val_t p0
, val_t p1
);
74 typedef val_t (*metamodel___genericity___MMTypeGeneric___adapt_to_t
)(val_t p0
, val_t p1
);
75 val_t
metamodel___genericity___MMTypeGeneric___params_equals(val_t p0
, val_t p1
);
76 typedef val_t (*metamodel___genericity___MMTypeGeneric___params_equals_t
)(val_t p0
, val_t p1
);
77 val_t
metamodel___genericity___MMTypeGeneric___to_s(val_t p0
);
78 typedef val_t (*metamodel___genericity___MMTypeGeneric___to_s_t
)(val_t p0
);
79 val_t
metamodel___genericity___MMTypeGeneric___is_subtype(val_t p0
, val_t p1
);
80 typedef val_t (*metamodel___genericity___MMTypeGeneric___is_subtype_t
)(val_t p0
, val_t p1
);
81 val_t
metamodel___genericity___MMTypeGeneric___has_formal(val_t p0
);
82 typedef val_t (*metamodel___genericity___MMTypeGeneric___has_formal_t
)(val_t p0
);
83 void metamodel___genericity___MMTypeGeneric___init(val_t p0
, val_t p1
, val_t p2
, int* init_table
);
84 typedef void (*metamodel___genericity___MMTypeGeneric___init_t
)(val_t p0
, val_t p1
, val_t p2
, int* init_table
);
85 val_t
NEW_MMTypeGeneric_metamodel___genericity___MMTypeGeneric___init(val_t p0
, val_t p1
);
86 val_t
metamodel___genericity___MMTypeFormalParameter___def_class(val_t p0
);
87 typedef val_t (*metamodel___genericity___MMTypeFormalParameter___def_class_t
)(val_t p0
);
88 val_t
metamodel___genericity___MMTypeFormalParameter___position(val_t p0
);
89 typedef val_t (*metamodel___genericity___MMTypeFormalParameter___position_t
)(val_t p0
);
90 val_t
metamodel___genericity___MMTypeFormalParameter___mmmodule(val_t p0
);
91 typedef val_t (*metamodel___genericity___MMTypeFormalParameter___mmmodule_t
)(val_t p0
);
92 val_t
metamodel___genericity___MMTypeFormalParameter___for_module(val_t p0
, val_t p1
);
93 typedef val_t (*metamodel___genericity___MMTypeFormalParameter___for_module_t
)(val_t p0
, val_t p1
);
94 val_t
metamodel___genericity___MMTypeFormalParameter___upcast_for(val_t p0
, val_t p1
);
95 typedef val_t (*metamodel___genericity___MMTypeFormalParameter___upcast_for_t
)(val_t p0
, val_t p1
);
96 void metamodel___genericity___MMTypeFormalParameter___bound__eq(val_t p0
, val_t p1
);
97 typedef void (*metamodel___genericity___MMTypeFormalParameter___bound__eq_t
)(val_t p0
, val_t p1
);
98 val_t
metamodel___genericity___MMTypeFormalParameter___adapt_to(val_t p0
, val_t p1
);
99 typedef val_t (*metamodel___genericity___MMTypeFormalParameter___adapt_to_t
)(val_t p0
, val_t p1
);
100 void metamodel___genericity___MMTypeFormalParameter___with_bound(val_t p0
, val_t p1
, val_t p2
, val_t p3
, val_t p4
, int* init_table
);
101 typedef void (*metamodel___genericity___MMTypeFormalParameter___with_bound_t
)(val_t p0
, val_t p1
, val_t p2
, val_t p3
, val_t p4
, int* init_table
);
102 val_t
NEW_MMTypeFormalParameter_metamodel___genericity___MMTypeFormalParameter___with_bound(val_t p0
, val_t p1
, val_t p2
, val_t p3
);
103 void metamodel___genericity___MMTypeFormalParameter___init(val_t p0
, val_t p1
, val_t p2
, val_t p3
, int* init_table
);
104 typedef void (*metamodel___genericity___MMTypeFormalParameter___init_t
)(val_t p0
, val_t p1
, val_t p2
, val_t p3
, int* init_table
);
105 val_t
NEW_MMTypeFormalParameter_metamodel___genericity___MMTypeFormalParameter___init(val_t p0
, val_t p1
, val_t p2
);
106 val_t
metamodel___genericity___MMTypeNone___is_generic(val_t p0
);
107 typedef val_t (*metamodel___genericity___MMTypeNone___is_generic_t
)(val_t p0
);
108 val_t
metamodel___genericity___MMTypeNone___for_module(val_t p0
, val_t p1
);
109 typedef val_t (*metamodel___genericity___MMTypeNone___for_module_t
)(val_t p0
, val_t p1
);
110 val_t
metamodel___genericity___MMTypeNone___adapt_to(val_t p0
, val_t p1
);
111 typedef val_t (*metamodel___genericity___MMTypeNone___adapt_to_t
)(val_t p0
, val_t p1
);
112 val_t
NEW_MMTypeNone_metamodel___static_type___MMTypeNone___init(val_t p0
);