mirror of
https://github.com/roc-lang/roc.git
synced 2025-09-30 15:21:12 +00:00

Figuring out what this module was doing, and why, took me a bit less than half an hour. We should document what's happening for others in the future so they don't need to follow up on Zulip necessarily.
30 lines
1.6 KiB
Text
30 lines
1.6 KiB
Text
procedure Test.3 (Test.29):
|
|
joinpoint Test.13 Test.4:
|
|
let Test.23 : Builtin(Bool) = 1i64;
|
|
let Test.24 : Builtin(Bool) = GetTagId Test.4;
|
|
let Test.25 : Builtin(Bool) = lowlevel Eq Test.23 Test.24;
|
|
if Test.25 then
|
|
let Test.14 : Builtin(Bool) = false;
|
|
ret Test.14;
|
|
else
|
|
let Test.19 : Union(NonRecursive([[Builtin(Int(I64))], []])) = UnionAtIndex (Id 0) (Index 0) Test.4;
|
|
let Test.20 : Builtin(Int(U8)) = 1i64;
|
|
let Test.21 : Builtin(Int(U8)) = GetTagId Test.19;
|
|
let Test.22 : Builtin(Bool) = lowlevel Eq Test.20 Test.21;
|
|
if Test.22 then
|
|
let Test.15 : Builtin(Bool) = true;
|
|
ret Test.15;
|
|
else
|
|
let Test.7 : Union(NullableUnwrapped { nullable_id: true, other_fields: [Union(NonRecursive([[Builtin(Int(I64))], []])), RecursivePointer] }) = UnionAtIndex (Id 0) (Index 1) Test.4;
|
|
jump Test.13 Test.7;
|
|
in
|
|
jump Test.13 Test.29;
|
|
|
|
procedure Test.0 ():
|
|
let Test.28 : Builtin(Int(I64)) = 3i64;
|
|
let Test.26 : Union(NonRecursive([[Builtin(Int(I64))], []])) = Just Test.28;
|
|
let Test.27 : Union(NullableUnwrapped { nullable_id: true, other_fields: [Union(NonRecursive([[Builtin(Int(I64))], []])), RecursivePointer] }) = Nil ;
|
|
let Test.12 : Union(NullableUnwrapped { nullable_id: true, other_fields: [Union(NonRecursive([[Builtin(Int(I64))], []])), RecursivePointer] }) = Cons Test.26 Test.27;
|
|
let Test.11 : Builtin(Bool) = CallByName Test.3 Test.12;
|
|
dec Test.12;
|
|
ret Test.11;
|