mirror of
https://github.com/roc-lang/roc.git
synced 2025-10-26 19:16:25 +00:00
294 lines
10 KiB
Text
Generated
294 lines
10 KiB
Text
Generated
procedure Bool.1 ():
|
|
let Bool.21 : Int1 = false;
|
|
ret Bool.21;
|
|
|
|
procedure Bool.9 (#Attr.2, #Attr.3):
|
|
let Bool.22 : Int1 = lowlevel Eq #Attr.2 #Attr.3;
|
|
ret Bool.22;
|
|
|
|
procedure Bool.9 (#Attr.2, #Attr.3):
|
|
let Bool.23 : Int1 = lowlevel Eq #Attr.2 #Attr.3;
|
|
ret Bool.23;
|
|
|
|
procedure Inspect.245 (Inspect.246, Inspect.244):
|
|
let Inspect.317 : Str = "\"";
|
|
let Inspect.316 : Str = CallByName Inspect.63 Inspect.246 Inspect.317;
|
|
dec Inspect.317;
|
|
let Inspect.312 : Str = CallByName Inspect.63 Inspect.316 Inspect.244;
|
|
let Inspect.313 : Str = "\"";
|
|
let Inspect.311 : Str = CallByName Inspect.63 Inspect.312 Inspect.313;
|
|
dec Inspect.313;
|
|
ret Inspect.311;
|
|
|
|
procedure Inspect.30 (Inspect.147):
|
|
ret Inspect.147;
|
|
|
|
procedure Inspect.33 (Inspect.152):
|
|
let Inspect.300 : Str = CallByName Inspect.5 Inspect.152;
|
|
let Inspect.299 : Str = CallByName Inspect.64 Inspect.300;
|
|
ret Inspect.299;
|
|
|
|
procedure Inspect.39 (Inspect.296):
|
|
let Inspect.306 : Str = "";
|
|
ret Inspect.306;
|
|
|
|
procedure Inspect.47 (Inspect.243):
|
|
let Inspect.327 : Str = "\u{feff}";
|
|
let Inspect.328 : Str = "\\u(feff)";
|
|
let Inspect.324 : Str = CallByName Str.45 Inspect.243 Inspect.327 Inspect.328;
|
|
dec Inspect.327;
|
|
dec Inspect.328;
|
|
let Inspect.325 : Str = "\u{200b}";
|
|
let Inspect.326 : Str = "\\u(200b)";
|
|
let Inspect.321 : Str = CallByName Str.45 Inspect.324 Inspect.325 Inspect.326;
|
|
dec Inspect.326;
|
|
dec Inspect.325;
|
|
let Inspect.322 : Str = "\u{200c}";
|
|
let Inspect.323 : Str = "\\u(200c)";
|
|
let Inspect.318 : Str = CallByName Str.45 Inspect.321 Inspect.322 Inspect.323;
|
|
dec Inspect.322;
|
|
dec Inspect.323;
|
|
let Inspect.319 : Str = "\u{200d}";
|
|
let Inspect.320 : Str = "\\u(200d)";
|
|
let Inspect.244 : Str = CallByName Str.45 Inspect.318 Inspect.319 Inspect.320;
|
|
dec Inspect.319;
|
|
dec Inspect.320;
|
|
let Inspect.308 : Str = CallByName Inspect.30 Inspect.244;
|
|
ret Inspect.308;
|
|
|
|
procedure Inspect.5 (Inspect.150):
|
|
let Inspect.307 : Str = CallByName Inspect.47 Inspect.150;
|
|
let Inspect.304 : {} = Struct {};
|
|
let Inspect.303 : Str = CallByName Inspect.39 Inspect.304;
|
|
let Inspect.302 : Str = CallByName Inspect.245 Inspect.303 Inspect.307;
|
|
dec Inspect.307;
|
|
ret Inspect.302;
|
|
|
|
procedure Inspect.63 (Inspect.295, Inspect.291):
|
|
let Inspect.315 : Str = CallByName Str.3 Inspect.295 Inspect.291;
|
|
ret Inspect.315;
|
|
|
|
procedure Inspect.64 (Inspect.297):
|
|
ret Inspect.297;
|
|
|
|
procedure Num.20 (#Attr.2, #Attr.3):
|
|
let Num.288 : U64 = lowlevel NumSub #Attr.2 #Attr.3;
|
|
ret Num.288;
|
|
|
|
procedure Num.22 (#Attr.2, #Attr.3):
|
|
let Num.290 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
|
ret Num.290;
|
|
|
|
procedure Num.23 (#Attr.2, #Attr.3):
|
|
let Num.292 : Int1 = lowlevel NumLte #Attr.2 #Attr.3;
|
|
ret Num.292;
|
|
|
|
procedure Num.25 (#Attr.2, #Attr.3):
|
|
let Num.289 : Int1 = lowlevel NumGte #Attr.2 #Attr.3;
|
|
ret Num.289;
|
|
|
|
procedure Num.51 (#Attr.2, #Attr.3):
|
|
let Num.286 : U64 = lowlevel NumAddWrap #Attr.2 #Attr.3;
|
|
ret Num.286;
|
|
|
|
procedure Num.53 (#Attr.2, #Attr.3):
|
|
let Num.291 : U64 = lowlevel NumAddSaturated #Attr.2 #Attr.3;
|
|
ret Num.291;
|
|
|
|
procedure Num.77 (#Attr.2, #Attr.3):
|
|
let Num.293 : U64 = lowlevel NumSubSaturated #Attr.2 #Attr.3;
|
|
ret Num.293;
|
|
|
|
procedure Str.20 (#Attr.2):
|
|
let Str.318 : Str = lowlevel StrWithCapacity #Attr.2;
|
|
ret Str.318;
|
|
|
|
procedure Str.3 (#Attr.2, #Attr.3):
|
|
let Str.250 : Str = lowlevel StrConcat #Attr.2 #Attr.3;
|
|
ret Str.250;
|
|
|
|
procedure Str.35 (#Attr.2, #Attr.3):
|
|
let Str.308 : U8 = lowlevel StrGetUnsafe #Attr.2 #Attr.3;
|
|
ret Str.308;
|
|
|
|
procedure Str.36 (#Attr.2):
|
|
let Str.270 : U64 = lowlevel StrCountUtf8Bytes #Attr.2;
|
|
ret Str.270;
|
|
|
|
procedure Str.37 (#Attr.2, #Attr.3, #Attr.4):
|
|
let Str.268 : Str = lowlevel StrSubstringUnsafe #Attr.2 #Attr.3 #Attr.4;
|
|
ret Str.268;
|
|
|
|
procedure Str.38 (Str.113, Str.114):
|
|
let Str.264 : [C , C U64] = CallByName Str.58 Str.113 Str.114;
|
|
let Str.277 : U8 = 1i64;
|
|
let Str.278 : U8 = GetTagId Str.264;
|
|
let Str.279 : Int1 = lowlevel Eq Str.277 Str.278;
|
|
if Str.279 then
|
|
let Str.115 : U64 = UnionAtIndex (Id 1) (Index 0) Str.264;
|
|
let Str.273 : U64 = CallByName Str.36 Str.113;
|
|
let Str.274 : U64 = CallByName Str.36 Str.114;
|
|
let Str.272 : U64 = CallByName Num.20 Str.273 Str.274;
|
|
let Str.116 : U64 = CallByName Num.20 Str.272 Str.115;
|
|
let Str.271 : U64 = 0i64;
|
|
inc Str.113;
|
|
let Str.117 : Str = CallByName Str.37 Str.113 Str.271 Str.115;
|
|
let Str.269 : U64 = CallByName Str.36 Str.114;
|
|
let Str.267 : U64 = CallByName Num.51 Str.115 Str.269;
|
|
let Str.118 : Str = CallByName Str.37 Str.113 Str.267 Str.116;
|
|
let Str.266 : {Str, Str} = Struct {Str.118, Str.117};
|
|
let Str.265 : [C {}, C {Str, Str}] = TagId(1) Str.266;
|
|
ret Str.265;
|
|
else
|
|
dec Str.113;
|
|
let Str.276 : {} = Struct {};
|
|
let Str.275 : [C {}, C {Str, Str}] = TagId(0) Str.276;
|
|
ret Str.275;
|
|
|
|
procedure Str.45 (Str.92, Str.93, Str.94):
|
|
inc Str.92;
|
|
let Str.346 : [C {}, C {Str, Str}] = CallByName Str.38 Str.92 Str.93;
|
|
let Str.354 : U8 = 1i64;
|
|
let Str.355 : U8 = GetTagId Str.346;
|
|
let Str.356 : Int1 = lowlevel Eq Str.354 Str.355;
|
|
if Str.356 then
|
|
let Str.353 : {Str, Str} = UnionAtIndex (Id 1) (Index 0) Str.346;
|
|
let Str.96 : Str = StructAtIndex 0 Str.353;
|
|
let Str.95 : Str = StructAtIndex 1 Str.353;
|
|
let Str.351 : U64 = CallByName Str.36 Str.92;
|
|
dec Str.92;
|
|
let Str.350 : Str = CallByName Str.20 Str.351;
|
|
let Str.349 : Str = CallByName Str.3 Str.350 Str.95;
|
|
dec Str.95;
|
|
let Str.348 : Str = CallByName Str.3 Str.349 Str.94;
|
|
let Str.347 : Str = CallByName Str.57 Str.348 Str.96 Str.93 Str.94;
|
|
ret Str.347;
|
|
else
|
|
dec Str.346;
|
|
ret Str.92;
|
|
|
|
procedure Str.57 (Bool.24, Bool.25, Bool.26, Bool.27):
|
|
joinpoint Str.254 Str.97 Str.98 Str.99 Str.100:
|
|
inc Str.98;
|
|
let Str.255 : [C {}, C {Str, Str}] = CallByName Str.38 Str.98 Str.99;
|
|
let Str.261 : U8 = 1i64;
|
|
let Str.262 : U8 = GetTagId Str.255;
|
|
let Str.263 : Int1 = lowlevel Eq Str.261 Str.262;
|
|
if Str.263 then
|
|
dec Str.98;
|
|
let Str.260 : {Str, Str} = UnionAtIndex (Id 1) (Index 0) Str.255;
|
|
let Str.102 : Str = StructAtIndex 0 Str.260;
|
|
let Str.101 : Str = StructAtIndex 1 Str.260;
|
|
let Str.258 : Str = CallByName Str.3 Str.97 Str.101;
|
|
dec Str.101;
|
|
let Str.257 : Str = CallByName Str.3 Str.258 Str.100;
|
|
jump Str.254 Str.257 Str.102 Str.99 Str.100;
|
|
else
|
|
dec Str.100;
|
|
dec Str.99;
|
|
dec Str.255;
|
|
let Str.259 : Str = CallByName Str.3 Str.97 Str.98;
|
|
dec Str.98;
|
|
ret Str.259;
|
|
in
|
|
inc Bool.26;
|
|
inc Bool.27;
|
|
jump Str.254 Bool.24 Bool.25 Bool.26 Bool.27;
|
|
|
|
procedure Str.58 (Str.122, Str.123):
|
|
let Str.124 : U64 = CallByName Str.36 Str.122;
|
|
let Str.125 : U64 = CallByName Str.36 Str.123;
|
|
let Str.126 : U64 = CallByName Num.77 Str.124 Str.125;
|
|
let Str.281 : U64 = 0i64;
|
|
let Str.280 : [C , C U64] = CallByName Str.59 Str.122 Str.123 Str.281 Str.126;
|
|
ret Str.280;
|
|
|
|
procedure Str.59 (Bool.28, Bool.29, Bool.30, Bool.31):
|
|
joinpoint Str.282 Str.127 Str.128 Str.129 Str.130:
|
|
let Str.284 : Int1 = CallByName Num.23 Str.129 Str.130;
|
|
if Str.284 then
|
|
let Str.288 : Int1 = CallByName Str.63 Str.127 Str.129 Str.128;
|
|
if Str.288 then
|
|
dec Str.127;
|
|
dec Str.128;
|
|
let Str.289 : [C , C U64] = TagId(1) Str.129;
|
|
ret Str.289;
|
|
else
|
|
let Str.287 : U64 = 1i64;
|
|
let Str.286 : U64 = CallByName Num.51 Str.129 Str.287;
|
|
jump Str.282 Str.127 Str.128 Str.286 Str.130;
|
|
else
|
|
dec Str.127;
|
|
dec Str.128;
|
|
let Str.283 : [C , C U64] = TagId(0) ;
|
|
ret Str.283;
|
|
in
|
|
inc Bool.29;
|
|
inc Bool.28;
|
|
jump Str.282 Bool.28 Bool.29 Bool.30 Bool.31;
|
|
|
|
procedure Str.62 (Str.153, Str.154):
|
|
let Str.313 : Int1 = CallByName Num.22 Str.153 Str.154;
|
|
if Str.313 then
|
|
ret Str.153;
|
|
else
|
|
ret Str.154;
|
|
|
|
procedure Str.63 (Str.155, Str.156, Str.157):
|
|
let Str.158 : U64 = CallByName Str.36 Str.155;
|
|
let Str.159 : U64 = CallByName Str.36 Str.157;
|
|
let Str.311 : U64 = CallByName Num.53 Str.156 Str.159;
|
|
let Str.160 : U64 = CallByName Str.62 Str.311 Str.158;
|
|
let Str.310 : U64 = 0i64;
|
|
inc Str.157;
|
|
inc Str.155;
|
|
let Str.291 : {U64, Str, U64, Str, U64, U64} = Struct {Str.160, Str.155, Str.156, Str.157, Str.310, Str.159};
|
|
let Str.290 : Int1 = CallByName Str.64 Str.291;
|
|
ret Str.290;
|
|
|
|
procedure Str.64 (Str.161):
|
|
let Str.167 : U64 = StructAtIndex 0 Str.161;
|
|
let Str.162 : Str = StructAtIndex 1 Str.161;
|
|
let Str.163 : U64 = StructAtIndex 2 Str.161;
|
|
let Str.164 : Str = StructAtIndex 3 Str.161;
|
|
let Str.165 : U64 = StructAtIndex 4 Str.161;
|
|
let Str.166 : U64 = StructAtIndex 5 Str.161;
|
|
let Str.168 : Int1 = CallByName Num.25 Str.163 Str.167;
|
|
if Str.168 then
|
|
dec Str.162;
|
|
dec Str.164;
|
|
let Str.169 : Int1 = CallByName Bool.9 Str.165 Str.166;
|
|
ret Str.169;
|
|
else
|
|
let Str.306 : U8 = CallByName Str.35 Str.162 Str.163;
|
|
let Str.307 : U8 = CallByName Str.35 Str.164 Str.165;
|
|
let Str.170 : Int1 = CallByName Bool.9 Str.306 Str.307;
|
|
let Str.296 : U64 = StructAtIndex 0 Str.161;
|
|
let Str.297 : Str = StructAtIndex 1 Str.161;
|
|
let Str.299 : Str = StructAtIndex 3 Str.161;
|
|
let Str.301 : U64 = StructAtIndex 5 Str.161;
|
|
let Str.305 : U64 = 1i64;
|
|
let Str.303 : U64 = CallByName Num.51 Str.165 Str.305;
|
|
let Str.304 : U64 = 1i64;
|
|
let Str.302 : U64 = CallByName Num.51 Str.163 Str.304;
|
|
let Str.295 : {U64, Str, U64, Str, U64, U64} = Struct {Str.296, Str.297, Str.302, Str.299, Str.303, Str.301};
|
|
let Str.171 : Int1 = CallByName Str.64 Str.295;
|
|
if Str.170 then
|
|
ret Str.171;
|
|
else
|
|
let Str.293 : Int1 = CallByName Bool.1;
|
|
ret Str.293;
|
|
|
|
procedure Test.0 ():
|
|
let Test.4 : Str = "Hello ";
|
|
let Test.1 : Str = "world";
|
|
inc Test.1;
|
|
let Test.2 : Str = CallByName Inspect.33 Test.1;
|
|
dbg Test.2;
|
|
dec Test.2;
|
|
let Test.7 : Str = "!";
|
|
let Test.5 : Str = CallByName Str.3 Test.1 Test.7;
|
|
dec Test.7;
|
|
let Test.3 : Str = CallByName Str.3 Test.4 Test.5;
|
|
dec Test.5;
|
|
ret Test.3;
|