Merge: doc: fixed some typos and other misc. corrections
[nit.git] / c_src / core__environ.sep.1.c
1 #include "core__environ.sep.0.h"
2 /* method environ$String$environ for (self: String): String */
3 val* core__environ___String___environ(val* self) {
4 val* var /* : String */;
5 char* var1 /* : CString */;
6 char* var2 /* : CString */;
7 char* var4 /* : CString */;
8 char* var_res /* var res: CString */;
9 static char* varonce;
10 static int varonce_guard;
11 char* var5 /* : CString */;
12 static val* varonce6;
13 val* var7 /* : String */;
14 char* var8 /* : CString */;
15 val* var9 /* : String */;
16 val* var10 /* : nullable Int */;
17 val* var11 /* : nullable Int */;
18 val* var12 /* : nullable Bool */;
19 val* var13 /* : nullable Bool */;
20 char* var14 /* : CString */;
21 char* var15 /* : CString */;
22 char* var17 /* : CString */;
23 char* var_nulstr /* var nulstr: CString */;
24 short int var18 /* : Bool */;
25 short int var20 /* : Bool */;
26 short int var21 /* : Bool */;
27 val* var22 /* : String */;
28 static val* varonce23;
29 val* var24 /* : String */;
30 char* var25 /* : CString */;
31 val* var26 /* : String */;
32 val* var27 /* : nullable Int */;
33 val* var28 /* : nullable Int */;
34 val* var29 /* : nullable Bool */;
35 val* var30 /* : nullable Bool */;
36 {
37 var1 = ((char*(*)(val* self))(self->class->vft[COLOR_core__abstract_text__Text__to_cstring]))(self); /* to_cstring on <self:String>*/
38 }
39 {
40 { /* Inline environ$CString$get_environ (var1) on <var1:CString> */
41 var4 = core__environ___CString_get_environ___impl(var1);
42 var2 = var4;
43 goto RET_LABEL3;
44 RET_LABEL3:(void)0;
45 }
46 }
47 var_res = var2;
48 if (likely(varonce_guard)) {
49 var5 = varonce;
50 } else {
51 if (likely(varonce6!=NULL)) {
52 var7 = varonce6;
53 } else {
54 var8 = "";
55 var10 = (val*)(0l<<2|1);
56 var11 = (val*)(0l<<2|1);
57 var12 = (val*)((long)(0)<<2|3);
58 var13 = (val*)((long)(0)<<2|3);
59 var9 = core__flat___CString___to_s_unsafe(var8, var10, var11, var12, var13);
60 var7 = var9;
61 varonce6 = var7;
62 }
63 {
64 var14 = ((char*(*)(val* self))(var7->class->vft[COLOR_core__abstract_text__Text__to_cstring]))(var7); /* to_cstring on <var7:String>*/
65 }
66 {
67 { /* Inline environ$CString$get_environ (var14) on <var14:CString> */
68 var17 = core__environ___CString_get_environ___impl(var14);
69 var15 = var17;
70 goto RET_LABEL16;
71 RET_LABEL16:(void)0;
72 }
73 }
74 var5 = var15;
75 varonce = var5;
76 varonce_guard = 1;
77 }
78 var_nulstr = var5;
79 {
80 { /* Inline native$CString$!= (var_res,var_nulstr) on <var_res:CString> */
81 var20 = var_res == var_nulstr;
82 var21 = !var20;
83 var18 = var21;
84 goto RET_LABEL19;
85 RET_LABEL19:(void)0;
86 }
87 }
88 if (var18){
89 {
90 var22 = core__flat___CString___core__abstract_text__Object__to_s(var_res);
91 }
92 var = var22;
93 goto RET_LABEL;
94 } else {
95 if (likely(varonce23!=NULL)) {
96 var24 = varonce23;
97 } else {
98 var25 = "";
99 var27 = (val*)(0l<<2|1);
100 var28 = (val*)(0l<<2|1);
101 var29 = (val*)((long)(0)<<2|3);
102 var30 = (val*)((long)(0)<<2|3);
103 var26 = core__flat___CString___to_s_unsafe(var25, var27, var28, var29, var30);
104 var24 = var26;
105 varonce23 = var24;
106 }
107 var = var24;
108 goto RET_LABEL;
109 }
110 RET_LABEL:;
111 return var;
112 }
113 /* method environ$CString$get_environ for (self: CString): CString */
114 char* core__environ___CString___get_environ(char* self) {
115 char* var /* : CString */;
116 char* var1 /* : CString */;
117 var1 = core__environ___CString_get_environ___impl(self);
118 var = var1;
119 goto RET_LABEL;
120 RET_LABEL:;
121 return var;
122 }
123 /* method environ$Sys$init for (self: Sys) */
124 void core__environ___Sys___core__kernel__Object__init(val* self) {
125 static val* varonce;
126 val* var /* : String */;
127 char* var1 /* : CString */;
128 val* var2 /* : String */;
129 val* var3 /* : nullable Int */;
130 val* var4 /* : nullable Int */;
131 val* var5 /* : nullable Bool */;
132 val* var6 /* : nullable Bool */;
133 val* var7 /* : String */;
134 val* var_x /* var x: String */;
135 static val* varonce8;
136 val* var9 /* : String */;
137 char* var10 /* : CString */;
138 val* var11 /* : String */;
139 val* var12 /* : nullable Int */;
140 val* var13 /* : nullable Int */;
141 val* var14 /* : nullable Bool */;
142 val* var15 /* : nullable Bool */;
143 short int var16 /* : Bool */;
144 val* var_other /* var other: nullable Object */;
145 short int var18 /* : Bool */;
146 short int var19 /* : Bool */;
147 long var20 /* : Int */;
148 {
149 ((void(*)(val* self))(self->class->vft[COLOR_core__environ___Sys___core__kernel__Object__init]))(self); /* init on <self:Sys>*/
150 }
151 if (likely(varonce!=NULL)) {
152 var = varonce;
153 } else {
154 var1 = "NIT_SRAND";
155 var3 = (val*)(9l<<2|1);
156 var4 = (val*)(9l<<2|1);
157 var5 = (val*)((long)(0)<<2|3);
158 var6 = (val*)((long)(0)<<2|3);
159 var2 = core__flat___CString___to_s_unsafe(var1, var3, var4, var5, var6);
160 var = var2;
161 varonce = var;
162 }
163 {
164 var7 = core__environ___String___environ(var);
165 }
166 var_x = var7;
167 if (likely(varonce8!=NULL)) {
168 var9 = varonce8;
169 } else {
170 var10 = "";
171 var12 = (val*)(0l<<2|1);
172 var13 = (val*)(0l<<2|1);
173 var14 = (val*)((long)(0)<<2|3);
174 var15 = (val*)((long)(0)<<2|3);
175 var11 = core__flat___CString___to_s_unsafe(var10, var12, var13, var14, var15);
176 var9 = var11;
177 varonce8 = var9;
178 }
179 {
180 { /* Inline kernel$Object$!= (var_x,var9) on <var_x:String> */
181 var_other = var9;
182 {
183 var18 = ((short int(*)(val* self, val* p0))(var_x->class->vft[COLOR_core__kernel__Object___61d_61d]))(var_x, var_other); /* == on <var_x:String>*/
184 }
185 var19 = !var18;
186 var16 = var19;
187 goto RET_LABEL17;
188 RET_LABEL17:(void)0;
189 }
190 }
191 if (var16){
192 {
193 var20 = core__fixed_ints_text___Text___to_i(var_x);
194 }
195 {
196 { /* Inline math$Sys$srand_from (self,var20) on <self:Sys> */
197 struct nitni_instance* var_for_c_0;
198 var_for_c_0 = nit_alloc(sizeof(struct nitni_instance));
199 var_for_c_0->value = self;
200 core__math___Sys_srand_from___impl(var_for_c_0, var20);
201 RET_LABEL21:(void)0;
202 }
203 }
204 } else {
205 }
206 RET_LABEL:;
207 }