niti, nitg & rta: use lookup_first_definition
[nit.git] / c_src / standard___symbol._sep.c
1 /* This C file is generated by NIT to compile module standard___symbol. */
2 #include "standard___symbol._sep.h"
3 val_t standard___symbol___String___to_symbol(val_t p0){
4 struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
5 val_t REGB0;
6 val_t tmp;
7 static val_t once_value_1; /* Once value */
8 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
9 fra.me.file = LOCATE_standard___symbol;
10 fra.me.line = 20;
11 fra.me.meth = LOCATE_standard___symbol___String___to_symbol;
12 fra.me.has_broke = 0;
13 fra.me.REG_size = 4;
14 fra.me.nitni_local_ref_head = NULL;
15 fra.me.REG[0] = NIT_NULL;
16 fra.me.REG[1] = NIT_NULL;
17 fra.me.REG[2] = NIT_NULL;
18 fra.me.REG[3] = NIT_NULL;
19 fra.me.REG[0] = p0;
20 /* ../lib/standard/symbol.nit:23 */
21 if (!once_value_1) {
22 fra.me.REG[1] = NEW_HashMap_standard___collection___hash_collection___HashMap___init();
23 once_value_1 = fra.me.REG[1];
24 register_static_object(&once_value_1);
25 } else fra.me.REG[1] = once_value_1;
26 fra.me.REG[1] = fra.me.REG[1];
27 /* ../lib/standard/symbol.nit:24 */
28 REGB0 = CALL_standard___collection___abstract_collection___MapRead___has_key(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
29 if (UNTAG_Bool(REGB0)) {
30 /* ../lib/standard/symbol.nit:25 */
31 fra.me.REG[2] = CALL_standard___collection___abstract_collection___MapRead_____bra(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
32 goto label2;
33 } else {
34 /* ../lib/standard/symbol.nit:27 */
35 fra.me.REG[3] = NEW_Symbol_standard___symbol___Symbol___init(fra.me.REG[0]);
36 /* ../lib/standard/symbol.nit:28 */
37 CALL_standard___collection___abstract_collection___Map_____braeq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0], fra.me.REG[3]);
38 /* ../lib/standard/symbol.nit:29 */
39 fra.me.REG[2] = fra.me.REG[3];
40 goto label2;
41 }
42 label2: while(0);
43 stack_frame_head = fra.me.prev;
44 return fra.me.REG[2];
45 }
46 val_t standard___symbol___Symbol___to_s(val_t p0){
47 struct {struct stack_frame_t me;} fra;
48 val_t REGB0;
49 val_t tmp;
50 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
51 fra.me.file = LOCATE_standard___symbol;
52 fra.me.line = 37;
53 fra.me.meth = LOCATE_standard___symbol___Symbol___to_s;
54 fra.me.has_broke = 0;
55 fra.me.REG_size = 1;
56 fra.me.nitni_local_ref_head = NULL;
57 fra.me.REG[0] = NIT_NULL;
58 fra.me.REG[0] = p0;
59 /* ../lib/standard/symbol.nit:37 */
60 REGB0 = TAG_Bool(ATTR_standard___symbol___Symbol____string(fra.me.REG[0])!=NIT_NULL);
61 if (UNTAG_Bool(REGB0)) {
62 } else {
63 nit_abort("Uninitialized attribute %s", "_string", LOCATE_standard___symbol, 37);
64 }
65 fra.me.REG[0] = ATTR_standard___symbol___Symbol____string(fra.me.REG[0]);
66 fra.me.REG[0] = CALL_standard___string___Object___to_s(fra.me.REG[0])(fra.me.REG[0]);
67 goto label1;
68 label1: while(0);
69 stack_frame_head = fra.me.prev;
70 return fra.me.REG[0];
71 }
72 void standard___symbol___Symbol___init(val_t p0, val_t p1, int* init_table){
73 int itpos0 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_standard___symbol___Symbol].i;
74 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
75 val_t tmp;
76 if (init_table[itpos0]) return;
77 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
78 fra.me.file = LOCATE_standard___symbol;
79 fra.me.line = 39;
80 fra.me.meth = LOCATE_standard___symbol___Symbol___init;
81 fra.me.has_broke = 0;
82 fra.me.REG_size = 2;
83 fra.me.nitni_local_ref_head = NULL;
84 fra.me.REG[0] = NIT_NULL;
85 fra.me.REG[1] = NIT_NULL;
86 fra.me.REG[0] = p0;
87 fra.me.REG[1] = p1;
88 /* ../lib/standard/symbol.nit:40 */
89 ATTR_standard___symbol___Symbol____string(fra.me.REG[0]) = fra.me.REG[1];
90 stack_frame_head = fra.me.prev;
91 init_table[itpos0] = 1;
92 return;
93 }