update NOTICE and LICENSE
[nit.git] / c_src / symbol._sep.c
1 /* This C file is generated by NIT to compile module symbol. */
2 #include "symbol._sep.h"
3 val_t 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_symbol;
10 fra.me.line = 20;
11 fra.me.meth = LOCATE_symbol___String___to_symbol;
12 fra.me.has_broke = 0;
13 fra.me.REG_size = 4;
14 fra.me.REG[0] = NIT_NULL;
15 fra.me.REG[1] = NIT_NULL;
16 fra.me.REG[2] = NIT_NULL;
17 fra.me.REG[3] = NIT_NULL;
18 fra.me.REG[0] = p0;
19 /* ./../lib/standard//symbol.nit:23 */
20 if (!once_value_1) {
21 fra.me.REG[1] = NEW_HashMap_hash_collection___HashMap___init();
22 once_value_1 = fra.me.REG[1];
23 register_static_object(&once_value_1);
24 } else fra.me.REG[1] = once_value_1;
25 fra.me.REG[1] = fra.me.REG[1];
26 /* ./../lib/standard//symbol.nit:24 */
27 REGB0 = CALL_abstract_collection___MapRead___has_key(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
28 if (UNTAG_Bool(REGB0)) {
29 /* ./../lib/standard//symbol.nit:25 */
30 fra.me.REG[2] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
31 goto label2;
32 } else {
33 /* ./../lib/standard//symbol.nit:27 */
34 fra.me.REG[3] = NEW_Symbol_symbol___Symbol___init(fra.me.REG[0]);
35 /* ./../lib/standard//symbol.nit:28 */
36 CALL_abstract_collection___Map_____braeq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0], fra.me.REG[3]);
37 /* ./../lib/standard//symbol.nit:29 */
38 fra.me.REG[2] = fra.me.REG[3];
39 goto label2;
40 }
41 label2: while(0);
42 stack_frame_head = fra.me.prev;
43 return fra.me.REG[2];
44 }
45 val_t symbol___Symbol___to_s(val_t p0){
46 struct {struct stack_frame_t me;} fra;
47 val_t REGB0;
48 val_t tmp;
49 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
50 fra.me.file = LOCATE_symbol;
51 fra.me.line = 37;
52 fra.me.meth = LOCATE_symbol___Symbol___to_s;
53 fra.me.has_broke = 0;
54 fra.me.REG_size = 1;
55 fra.me.REG[0] = NIT_NULL;
56 fra.me.REG[0] = p0;
57 /* ./../lib/standard//symbol.nit:37 */
58 REGB0 = TAG_Bool(ATTR_symbol___Symbol____string(fra.me.REG[0])!=NIT_NULL);
59 if (UNTAG_Bool(REGB0)) {
60 } else {
61 nit_abort("Uninitialized attribute %s", "_string", LOCATE_symbol, 37);
62 }
63 fra.me.REG[0] = ATTR_symbol___Symbol____string(fra.me.REG[0]);
64 fra.me.REG[0] = CALL_string___Object___to_s(fra.me.REG[0])(fra.me.REG[0]);
65 goto label1;
66 label1: while(0);
67 stack_frame_head = fra.me.prev;
68 return fra.me.REG[0];
69 }
70 void symbol___Symbol___init(val_t p0, val_t p1, int* init_table){
71 int itpos0 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_Symbol].i;
72 struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
73 val_t tmp;
74 if (init_table[itpos0]) return;
75 fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
76 fra.me.file = LOCATE_symbol;
77 fra.me.line = 39;
78 fra.me.meth = LOCATE_symbol___Symbol___init;
79 fra.me.has_broke = 0;
80 fra.me.REG_size = 2;
81 fra.me.REG[0] = NIT_NULL;
82 fra.me.REG[1] = NIT_NULL;
83 fra.me.REG[0] = p0;
84 fra.me.REG[1] = p1;
85 /* ./../lib/standard//symbol.nit:40 */
86 ATTR_symbol___Symbol____string(fra.me.REG[0]) = fra.me.REG[1];
87 stack_frame_head = fra.me.prev;
88 init_table[itpos0] = 1;
89 return;
90 }