mirror of
https://github.com/roc-lang/roc.git
synced 2025-08-03 19:58:18 +00:00
Merge pull request #5163 from lukewilliamboswell/builtin-json
More tests and updates for Json builtin
This commit is contained in:
commit
a6bda6eccf
21 changed files with 8515 additions and 1835 deletions
|
@ -63,7 +63,7 @@ DecodeError : [TooShort]
|
|||
## ```
|
||||
## expect
|
||||
## input = "\"hello\", " |> Str.toUtf8
|
||||
## actual = Decode.fromBytesPartial input Json.fromUtf8
|
||||
## actual = Decode.fromBytesPartial input Json.json
|
||||
## expected = Ok "hello"
|
||||
##
|
||||
## actual.result == expected
|
||||
|
@ -136,7 +136,7 @@ decodeWith = \bytes, @Decoder decode, fmt -> decode bytes fmt
|
|||
## ```
|
||||
## expect
|
||||
## input = "\"hello\", " |> Str.toUtf8
|
||||
## actual = Decode.fromBytesPartial input Json.fromUtf8
|
||||
## actual = Decode.fromBytesPartial input Json.json
|
||||
## expected = Ok "hello"
|
||||
##
|
||||
## actual.result == expected
|
||||
|
@ -150,7 +150,7 @@ fromBytesPartial = \bytes, fmt -> decodeWith bytes decoder fmt
|
|||
## ```
|
||||
## expect
|
||||
## input = "\"hello\", " |> Str.toUtf8
|
||||
## actual = Decode.fromBytes input Json.fromUtf8
|
||||
## actual = Decode.fromBytes input Json.json
|
||||
## expected = Ok "hello"
|
||||
##
|
||||
## actual == expected
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -365,13 +365,13 @@ fn encode_use_stdlib() {
|
|||
|> Encode.appendWith (Encode.string "Hello, World!\n") fmt
|
||||
|
||||
main =
|
||||
result = Str.fromUtf8 (Encode.toBytes (@HelloWorld {}) Json.toUtf8)
|
||||
result = Str.fromUtf8 (Encode.toBytes (@HelloWorld {}) Json.json)
|
||||
when result is
|
||||
Ok s -> s
|
||||
_ -> "<bad>"
|
||||
"#
|
||||
),
|
||||
RocStr::from("\"Hello, World!\n\""),
|
||||
RocStr::from("\"Hello, World!\\n\""),
|
||||
RocStr
|
||||
)
|
||||
}
|
||||
|
@ -390,13 +390,13 @@ fn encode_use_stdlib_without_wrapping_custom() {
|
|||
toEncoder = \@HelloWorld {} -> Encode.string "Hello, World!\n"
|
||||
|
||||
main =
|
||||
result = Str.fromUtf8 (Encode.toBytes (@HelloWorld {}) Json.toUtf8)
|
||||
result = Str.fromUtf8 (Encode.toBytes (@HelloWorld {}) Json.json)
|
||||
when result is
|
||||
Ok s -> s
|
||||
_ -> "<bad>"
|
||||
"#
|
||||
),
|
||||
RocStr::from("\"Hello, World!\n\""),
|
||||
RocStr::from("\"Hello, World!\\n\""),
|
||||
RocStr
|
||||
)
|
||||
}
|
||||
|
@ -414,7 +414,7 @@ fn encode_derive_to_encoder_for_opaque() {
|
|||
HelloWorld := { a: Str } has [Encoding]
|
||||
|
||||
main =
|
||||
result = Str.fromUtf8 (Encode.toBytes (@HelloWorld { a: "Hello, World!" }) Json.toUtf8)
|
||||
result = Str.fromUtf8 (Encode.toBytes (@HelloWorld { a: "Hello, World!" }) Json.json)
|
||||
when result is
|
||||
Ok s -> s
|
||||
_ -> "<bad>"
|
||||
|
@ -442,13 +442,13 @@ fn to_encoder_encode_custom_has_capture() {
|
|||
|> Encode.appendWith (Encode.string s1) fmt
|
||||
|
||||
main =
|
||||
result = Str.fromUtf8 (Encode.toBytes (@HelloWorld "Hello, World!\n") Json.toUtf8)
|
||||
result = Str.fromUtf8 (Encode.toBytes (@HelloWorld "Hello, World!\n") Json.json)
|
||||
when result is
|
||||
Ok s -> s
|
||||
_ -> "<bad>"
|
||||
"#
|
||||
),
|
||||
RocStr::from("\"Hello, World!\n\""),
|
||||
RocStr::from("\"Hello, World!\\n\""),
|
||||
RocStr
|
||||
)
|
||||
}
|
||||
|
@ -475,7 +475,7 @@ mod encode_immediate {
|
|||
app "test" imports [Encode, Json] provides [main] to "./platform"
|
||||
|
||||
main =
|
||||
when Str.fromUtf8 (Encode.toBytes "foo" Json.toUtf8) is
|
||||
when Str.fromUtf8 (Encode.toBytes "foo" Json.json) is
|
||||
Ok s -> s
|
||||
_ -> "<bad>"
|
||||
"#
|
||||
|
@ -494,7 +494,7 @@ mod encode_immediate {
|
|||
app "test" imports [Encode, Json] provides [main] to "./platform"
|
||||
|
||||
main =
|
||||
when Str.fromUtf8 (Encode.toBytes [1, 2, 3] Json.toUtf8) is
|
||||
when Str.fromUtf8 (Encode.toBytes [1, 2, 3] Json.json) is
|
||||
Ok s -> s
|
||||
_ -> "<bad>"
|
||||
"#
|
||||
|
@ -513,7 +513,7 @@ mod encode_immediate {
|
|||
app "test" imports [Encode, Json] provides [main] to "./platform"
|
||||
|
||||
main =
|
||||
when Str.fromUtf8 (Encode.toBytes Bool.false Json.toUtf8) is
|
||||
when Str.fromUtf8 (Encode.toBytes Bool.false Json.json) is
|
||||
Ok s -> s
|
||||
_ -> "<bad>"
|
||||
"#
|
||||
|
@ -534,7 +534,7 @@ mod encode_immediate {
|
|||
app "test" imports [Encode, Json] provides [main] to "./platform"
|
||||
|
||||
main =
|
||||
when Str.fromUtf8 (Encode.toBytes {}{} Json.toUtf8) is
|
||||
when Str.fromUtf8 (Encode.toBytes {}{} Json.json) is
|
||||
Ok s -> s
|
||||
_ -> "<bad>"
|
||||
"#
|
||||
|
@ -574,7 +574,7 @@ fn encode_derived_record_one_field_string() {
|
|||
provides [main] to "./platform"
|
||||
|
||||
main =
|
||||
result = Str.fromUtf8 (Encode.toBytes {a: "foo"} Json.toUtf8)
|
||||
result = Str.fromUtf8 (Encode.toBytes {a: "foo"} Json.json)
|
||||
when result is
|
||||
Ok s -> s
|
||||
_ -> "<bad>"
|
||||
|
@ -597,7 +597,7 @@ fn encode_derived_record_two_fields_strings() {
|
|||
|
||||
main =
|
||||
rcd = {a: "foo", b: "bar"}
|
||||
result = Str.fromUtf8 (Encode.toBytes rcd Json.toUtf8)
|
||||
result = Str.fromUtf8 (Encode.toBytes rcd Json.json)
|
||||
when result is
|
||||
Ok s -> s
|
||||
_ -> "<bad>"
|
||||
|
@ -620,7 +620,7 @@ fn encode_derived_nested_record_string() {
|
|||
|
||||
main =
|
||||
rcd = {a: {b: "bar"}}
|
||||
encoded = Encode.toBytes rcd Json.toUtf8
|
||||
encoded = Encode.toBytes rcd Json.json
|
||||
result = Str.fromUtf8 encoded
|
||||
when result is
|
||||
Ok s -> s
|
||||
|
@ -644,7 +644,7 @@ fn encode_derived_tag_one_payload_string() {
|
|||
|
||||
main =
|
||||
x = A "foo"
|
||||
result = Str.fromUtf8 (Encode.toBytes x Json.toUtf8)
|
||||
result = Str.fromUtf8 (Encode.toBytes x Json.json)
|
||||
when result is
|
||||
Ok s -> s
|
||||
_ -> "<bad>"
|
||||
|
@ -667,7 +667,7 @@ fn encode_derived_tag_two_payloads_string() {
|
|||
|
||||
main =
|
||||
x = A "foo" "bar"
|
||||
result = Str.fromUtf8 (Encode.toBytes x Json.toUtf8)
|
||||
result = Str.fromUtf8 (Encode.toBytes x Json.json)
|
||||
when result is
|
||||
Ok s -> s
|
||||
_ -> "<bad>"
|
||||
|
@ -690,7 +690,7 @@ fn encode_derived_nested_tag_string() {
|
|||
|
||||
main =
|
||||
x = A (B "foo" "bar")
|
||||
encoded = Encode.toBytes x Json.toUtf8
|
||||
encoded = Encode.toBytes x Json.json
|
||||
result = Str.fromUtf8 encoded
|
||||
when result is
|
||||
Ok s -> s
|
||||
|
@ -714,7 +714,7 @@ fn encode_derived_nested_record_tag_record() {
|
|||
|
||||
main =
|
||||
x = {a: (B ({c: "foo"}))}
|
||||
encoded = Encode.toBytes x Json.toUtf8
|
||||
encoded = Encode.toBytes x Json.json
|
||||
result = Str.fromUtf8 encoded
|
||||
when result is
|
||||
Ok s -> s
|
||||
|
@ -738,7 +738,7 @@ fn encode_derived_list_string() {
|
|||
|
||||
main =
|
||||
lst = ["foo", "bar", "baz"]
|
||||
encoded = Encode.toBytes lst Json.toUtf8
|
||||
encoded = Encode.toBytes lst Json.json
|
||||
result = Str.fromUtf8 encoded
|
||||
when result is
|
||||
Ok s -> s
|
||||
|
@ -762,7 +762,7 @@ fn encode_derived_list_of_records() {
|
|||
|
||||
main =
|
||||
lst = [{a: "foo"}, {a: "bar"}, {a: "baz"}]
|
||||
encoded = Encode.toBytes lst Json.toUtf8
|
||||
encoded = Encode.toBytes lst Json.json
|
||||
result = Str.fromUtf8 encoded
|
||||
when result is
|
||||
Ok s -> s
|
||||
|
@ -786,7 +786,7 @@ fn encode_derived_list_of_lists_of_strings() {
|
|||
|
||||
main =
|
||||
lst = [["a", "b"], ["c", "d", "e"], ["f"]]
|
||||
encoded = Encode.toBytes lst Json.toUtf8
|
||||
encoded = Encode.toBytes lst Json.json
|
||||
result = Str.fromUtf8 encoded
|
||||
when result is
|
||||
Ok s -> s
|
||||
|
@ -812,7 +812,7 @@ fn encode_derived_record_with_many_types() {
|
|||
fresh : [Fresh Str, Rotten Str]
|
||||
fresh = Fresh "tomatoes"
|
||||
rcd = {actors: ["Idris Elba", "Mila Kunis"], year: 2004u16, rating: {average: 7u8, min: 1u8, max: 10u8, sentiment: fresh}}
|
||||
result = Str.fromUtf8 (Encode.toBytes rcd Json.toUtf8)
|
||||
result = Str.fromUtf8 (Encode.toBytes rcd Json.json)
|
||||
when result is
|
||||
Ok s -> s
|
||||
_ -> "<bad>"
|
||||
|
@ -837,7 +837,7 @@ fn encode_derived_tuple_two_fields() {
|
|||
|
||||
main =
|
||||
tup = ("foo", 10u8)
|
||||
result = Str.fromUtf8 (Encode.toBytes tup Json.toUtf8)
|
||||
result = Str.fromUtf8 (Encode.toBytes tup Json.json)
|
||||
when result is
|
||||
Ok s -> s
|
||||
_ -> "<bad>"
|
||||
|
@ -860,7 +860,7 @@ fn encode_derived_tuple_of_tuples() {
|
|||
|
||||
main =
|
||||
tup = ( ("foo", 10u8), (23u8, "bar", 15u8) )
|
||||
result = Str.fromUtf8 (Encode.toBytes tup Json.toUtf8)
|
||||
result = Str.fromUtf8 (Encode.toBytes tup Json.json)
|
||||
when result is
|
||||
Ok s -> s
|
||||
_ -> "<bad>"
|
||||
|
@ -886,7 +886,7 @@ fn encode_derived_generic_record_with_different_field_types() {
|
|||
q = @Q {a: 10u32, b: "fieldb"}
|
||||
|
||||
main =
|
||||
result = Str.fromUtf8 (Encode.toBytes q Json.toUtf8)
|
||||
result = Str.fromUtf8 (Encode.toBytes q Json.json)
|
||||
when result is
|
||||
Ok s -> s
|
||||
_ -> "<bad>"
|
||||
|
@ -913,7 +913,7 @@ fn encode_derived_generic_tag_with_different_field_types() {
|
|||
q = @Q (B 67)
|
||||
|
||||
main =
|
||||
result = Str.fromUtf8 (Encode.toBytes q Json.toUtf8)
|
||||
result = Str.fromUtf8 (Encode.toBytes q Json.json)
|
||||
when result is
|
||||
Ok s -> s
|
||||
_ -> "<bad>"
|
||||
|
@ -945,7 +945,7 @@ fn decode_use_stdlib() {
|
|||
Err e -> {result: Err e, rest}
|
||||
|
||||
main =
|
||||
when Decode.fromBytes [49, 53] Json.fromUtf8 is
|
||||
when Decode.fromBytes [49, 53] Json.json is
|
||||
Ok (@MyNum n) -> n
|
||||
_ -> 101
|
||||
"#
|
||||
|
@ -971,7 +971,7 @@ fn decode_derive_decoder_for_opaque() {
|
|||
HelloWorld := { a: Str } has [Decoding]
|
||||
|
||||
main =
|
||||
when Str.toUtf8 """{"a":"Hello, World!"}""" |> Decode.fromBytes Json.fromUtf8 is
|
||||
when Str.toUtf8 """{"a":"Hello, World!"}""" |> Decode.fromBytes Json.json is
|
||||
Ok (@HelloWorld {a}) -> a
|
||||
_ -> "FAIL"
|
||||
"#
|
||||
|
@ -1002,7 +1002,7 @@ fn decode_use_stdlib_json_list() {
|
|||
Err e -> {result: Err e, rest}
|
||||
|
||||
main =
|
||||
when Str.toUtf8 "[1,2,3]" |> Decode.fromBytes Json.fromUtf8 is
|
||||
when Str.toUtf8 "[1,2,3]" |> Decode.fromBytes Json.json is
|
||||
Ok (@MyNumList lst) -> lst
|
||||
_ -> []
|
||||
"#
|
||||
|
@ -1034,7 +1034,7 @@ mod decode_immediate {
|
|||
app "test" imports [Json] provides [main] to "./platform"
|
||||
|
||||
main =
|
||||
when Str.toUtf8 "\"foo\"" |> Decode.fromBytes Json.fromUtf8 is
|
||||
when Str.toUtf8 "\"foo\"" |> Decode.fromBytes Json.json is
|
||||
Ok s -> s
|
||||
_ -> "<bad>"
|
||||
"#
|
||||
|
@ -1056,7 +1056,7 @@ mod decode_immediate {
|
|||
input = Str.toUtf8 "[1,2,3]"
|
||||
expected = [1,2,3]
|
||||
|
||||
actual = Decode.fromBytes input Json.fromUtf8 |> Result.withDefault []
|
||||
actual = Decode.fromBytes input Json.json |> Result.withDefault []
|
||||
|
||||
actual == expected
|
||||
"#
|
||||
|
@ -1075,7 +1075,7 @@ mod decode_immediate {
|
|||
app "test" imports [Json] provides [main] to "./platform"
|
||||
|
||||
main =
|
||||
when Str.toUtf8 "false" |> Decode.fromBytes Json.fromUtf8 is
|
||||
when Str.toUtf8 "false" |> Decode.fromBytes Json.json is
|
||||
Ok s -> s
|
||||
_ -> Bool.true
|
||||
"#
|
||||
|
@ -1096,7 +1096,7 @@ mod decode_immediate {
|
|||
app "test" imports [Json] provides [main] to "./platform"
|
||||
|
||||
main =
|
||||
when Num.toStr {}{} |> Str.toUtf8 |> Decode.fromBytes Json.fromUtf8 is
|
||||
when Num.toStr {}{} |> Str.toUtf8 |> Decode.fromBytes Json.json is
|
||||
Ok n -> n
|
||||
_ -> 101{}
|
||||
"#
|
||||
|
@ -1134,7 +1134,7 @@ mod decode_immediate {
|
|||
app "test" imports [Json] provides [main] to "./platform"
|
||||
|
||||
main =
|
||||
when Num.toStr 17.23dec |> Str.toUtf8 |> Decode.fromBytes Json.fromUtf8 is
|
||||
when Num.toStr 17.23dec |> Str.toUtf8 |> Decode.fromBytes Json.json is
|
||||
Ok n -> n
|
||||
_ -> 101dec
|
||||
"#
|
||||
|
@ -1154,7 +1154,7 @@ fn decode_list_of_strings() {
|
|||
app "test" imports [Json] provides [main] to "./platform"
|
||||
|
||||
main =
|
||||
when Str.toUtf8 "[\"a\",\"b\",\"c\"]" |> Decode.fromBytes Json.fromUtf8 is
|
||||
when Str.toUtf8 "[\"a\",\"b\",\"c\"]" |> Decode.fromBytes Json.json is
|
||||
Ok l -> Str.joinWith l ","
|
||||
_ -> "<bad>"
|
||||
"#
|
||||
|
@ -1173,7 +1173,7 @@ fn encode_then_decode_list_of_strings() {
|
|||
app "test" imports [Json] provides [main] to "./platform"
|
||||
|
||||
main =
|
||||
when Encode.toBytes ["a", "b", "c"] Json.fromUtf8 |> Decode.fromBytes Json.fromUtf8 is
|
||||
when Encode.toBytes ["a", "b", "c"] Json.json |> Decode.fromBytes Json.json is
|
||||
Ok l -> Str.joinWith l ","
|
||||
_ -> "something went wrong"
|
||||
"#
|
||||
|
@ -1193,7 +1193,7 @@ fn encode_then_decode_list_of_lists_of_strings() {
|
|||
app "test" imports [Json] provides [main] to "./platform"
|
||||
|
||||
main =
|
||||
when Encode.toBytes [["a", "b"], ["c", "d", "e"], ["f"]] Json.fromUtf8 |> Decode.fromBytes Json.fromUtf8 is
|
||||
when Encode.toBytes [["a", "b"], ["c", "d", "e"], ["f"]] Json.json |> Decode.fromBytes Json.json is
|
||||
Ok list -> (List.map list \inner -> Str.joinWith inner ",") |> Str.joinWith l ";"
|
||||
_ -> "something went wrong"
|
||||
"#
|
||||
|
@ -1215,7 +1215,7 @@ fn decode_record_two_fields() {
|
|||
app "test" imports [Json] provides [main] to "./platform"
|
||||
|
||||
main =
|
||||
when Str.toUtf8 "{\"first\":\"ab\",\"second\":\"cd\"}" |> Decode.fromBytes Json.fromUtf8 is
|
||||
when Str.toUtf8 "{\"first\":\"ab\",\"second\":\"cd\"}" |> Decode.fromBytes Json.json is
|
||||
Ok {first: "ab", second: "cd"} -> "abcd"
|
||||
_ -> "something went wrong"
|
||||
"#
|
||||
|
@ -1237,7 +1237,7 @@ fn decode_record_two_fields_string_and_int() {
|
|||
app "test" imports [Json] provides [main] to "./platform"
|
||||
|
||||
main =
|
||||
when Str.toUtf8 "{\"first\":\"ab\",\"second\":10}" |> Decode.fromBytes Json.fromUtf8 is
|
||||
when Str.toUtf8 "{\"first\":\"ab\",\"second\":10}" |> Decode.fromBytes Json.json is
|
||||
Ok {first: "ab", second: 10u8} -> "ab10"
|
||||
_ -> "something went wrong"
|
||||
"#
|
||||
|
@ -1259,7 +1259,7 @@ fn decode_record_two_fields_string_and_string_infer() {
|
|||
app "test" imports [Json] provides [main] to "./platform"
|
||||
|
||||
main =
|
||||
when Str.toUtf8 "{\"first\":\"ab\",\"second\":\"cd\"}" |> Decode.fromBytes Json.fromUtf8 is
|
||||
when Str.toUtf8 "{\"first\":\"ab\",\"second\":\"cd\"}" |> Decode.fromBytes Json.json is
|
||||
Ok {first, second} -> Str.concat first second
|
||||
_ -> "something went wrong"
|
||||
"#
|
||||
|
@ -1281,7 +1281,7 @@ fn decode_record_two_fields_string_and_string_infer_local_var() {
|
|||
app "test" imports [Json] provides [main] to "./platform"
|
||||
|
||||
main =
|
||||
decoded = Str.toUtf8 "{\"first\":\"ab\",\"second\":\"cd\"}" |> Decode.fromBytes Json.fromUtf8
|
||||
decoded = Str.toUtf8 "{\"first\":\"ab\",\"second\":\"cd\"}" |> Decode.fromBytes Json.json
|
||||
when decoded is
|
||||
Ok rcd -> Str.concat rcd.first rcd.second
|
||||
_ -> "something went wrong"
|
||||
|
@ -1304,7 +1304,7 @@ fn decode_record_two_fields_string_and_string_infer_local_var_destructured() {
|
|||
app "test" imports [Json] provides [main] to "./platform"
|
||||
|
||||
main =
|
||||
decoded = Str.toUtf8 "{\"first\":\"ab\",\"second\":\"cd\"}" |> Decode.fromBytes Json.fromUtf8
|
||||
decoded = Str.toUtf8 "{\"first\":\"ab\",\"second\":\"cd\"}" |> Decode.fromBytes Json.json
|
||||
when decoded is
|
||||
Ok {first, second} -> Str.concat first second
|
||||
_ -> "something went wrong"
|
||||
|
@ -1325,7 +1325,7 @@ fn decode_empty_record() {
|
|||
app "test" imports [Json] provides [main] to "./platform"
|
||||
|
||||
main =
|
||||
when Str.toUtf8 "{}" |> Decode.fromBytes Json.fromUtf8 is
|
||||
when Str.toUtf8 "{}" |> Decode.fromBytes Json.json is
|
||||
Ok {} -> "empty"
|
||||
_ -> "something went wrong"
|
||||
"#
|
||||
|
@ -1348,7 +1348,7 @@ fn decode_record_of_record() {
|
|||
app "test" imports [Json] provides [main] to "./platform"
|
||||
|
||||
main =
|
||||
when Str.toUtf8 "{\"outer\":{\"inner\":\"a\"},\"other\":{\"one\":\"b\",\"two\":10}}" |> Decode.fromBytes Json.fromUtf8 is
|
||||
when Str.toUtf8 "{\"outer\":{\"inner\":\"a\"},\"other\":{\"one\":\"b\",\"two\":10}}" |> Decode.fromBytes Json.json is
|
||||
Ok {outer: {inner: "a"}, other: {one: "b", two: 10u8}} -> "ab10"
|
||||
_ -> "something went wrong"
|
||||
"#
|
||||
|
@ -1370,7 +1370,7 @@ fn decode_tuple_two_elements() {
|
|||
app "test" imports [Json] provides [main] to "./platform"
|
||||
|
||||
main =
|
||||
when Str.toUtf8 "[\"ab\",10]" |> Decode.fromBytes Json.fromUtf8 is
|
||||
when Str.toUtf8 "[\"ab\",10]" |> Decode.fromBytes Json.json is
|
||||
Ok ("ab", 10u8) -> "abcd"
|
||||
_ -> "something went wrong"
|
||||
"#
|
||||
|
@ -1392,7 +1392,7 @@ fn decode_tuple_of_tuples() {
|
|||
app "test" imports [Json] provides [main] to "./platform"
|
||||
|
||||
main =
|
||||
when Str.toUtf8 "[[\"ab\",10],[\"cd\",25]]" |> Decode.fromBytes Json.fromUtf8 is
|
||||
when Str.toUtf8 "[[\"ab\",10],[\"cd\",25]]" |> Decode.fromBytes Json.json is
|
||||
Ok ( ("ab", 10u8), ("cd", 25u8) ) -> "abcd"
|
||||
_ -> "something went wrong"
|
||||
"#
|
||||
|
@ -2102,7 +2102,7 @@ fn issue_4772_weakened_monomorphic_destructure() {
|
|||
provides [main] to "./platform"
|
||||
|
||||
getNumber =
|
||||
{ result, rest } = Decode.fromBytesPartial (Str.toUtf8 "\"1234\"") Json.fromUtf8
|
||||
{ result, rest } = Decode.fromBytesPartial (Str.toUtf8 "\"1234\"") Json.json
|
||||
|
||||
when result is
|
||||
Ok val ->
|
||||
|
|
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -1,60 +1,339 @@
|
|||
procedure Bool.11 (#Attr.2, #Attr.3):
|
||||
let Bool.23 : Int1 = lowlevel Eq #Attr.2 #Attr.3;
|
||||
ret Bool.23;
|
||||
|
||||
procedure Encode.23 (Encode.98):
|
||||
ret Encode.98;
|
||||
|
||||
procedure Encode.24 (Encode.99, Encode.107, Encode.101):
|
||||
let Encode.111 : List U8 = CallByName Json.102 Encode.99 Encode.101 Encode.107;
|
||||
let Encode.111 : List U8 = CallByName Json.181 Encode.99 Encode.101 Encode.107;
|
||||
ret Encode.111;
|
||||
|
||||
procedure Encode.26 (Encode.105, Encode.106):
|
||||
let Encode.109 : List U8 = Array [];
|
||||
let Encode.110 : Str = CallByName Json.18 Encode.105;
|
||||
let Encode.110 : Str = CallByName Json.24 Encode.105;
|
||||
let Encode.108 : List U8 = CallByName Encode.24 Encode.109 Encode.110 Encode.106;
|
||||
ret Encode.108;
|
||||
|
||||
procedure Json.1 ():
|
||||
let Json.483 : {} = Struct {};
|
||||
ret Json.483;
|
||||
let Json.1171 : [C , C [], C , C , C , C ] = TagId(2) ;
|
||||
ret Json.1171;
|
||||
|
||||
procedure Json.102 (Json.103, Json.486, Json.101):
|
||||
let Json.495 : I64 = 34i64;
|
||||
let Json.494 : U8 = CallByName Num.127 Json.495;
|
||||
let Json.492 : List U8 = CallByName List.4 Json.103 Json.494;
|
||||
let Json.493 : List U8 = CallByName Str.12 Json.101;
|
||||
let Json.489 : List U8 = CallByName List.8 Json.492 Json.493;
|
||||
let Json.491 : I64 = 34i64;
|
||||
let Json.490 : U8 = CallByName Num.127 Json.491;
|
||||
let Json.488 : List U8 = CallByName List.4 Json.489 Json.490;
|
||||
ret Json.488;
|
||||
procedure Json.181 (Json.182, Json.1174, Json.180):
|
||||
let Json.1177 : List U8 = CallByName Json.25 Json.180;
|
||||
let Json.1176 : List U8 = CallByName List.8 Json.182 Json.1177;
|
||||
ret Json.1176;
|
||||
|
||||
procedure Json.18 (Json.101):
|
||||
let Json.484 : Str = CallByName Encode.23 Json.101;
|
||||
ret Json.484;
|
||||
procedure Json.188 (Json.1225, Json.191):
|
||||
let Json.189 : U64 = StructAtIndex 0 Json.1225;
|
||||
let Json.190 : Int1 = StructAtIndex 1 Json.1225;
|
||||
switch Json.191:
|
||||
case 34:
|
||||
let Json.1228 : Int1 = false;
|
||||
let Json.1227 : {U64, Int1} = Struct {Json.189, Json.1228};
|
||||
let Json.1226 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1227;
|
||||
ret Json.1226;
|
||||
|
||||
case 92:
|
||||
let Json.1231 : Int1 = false;
|
||||
let Json.1230 : {U64, Int1} = Struct {Json.189, Json.1231};
|
||||
let Json.1229 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1230;
|
||||
ret Json.1229;
|
||||
|
||||
case 47:
|
||||
let Json.1234 : Int1 = false;
|
||||
let Json.1233 : {U64, Int1} = Struct {Json.189, Json.1234};
|
||||
let Json.1232 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1233;
|
||||
ret Json.1232;
|
||||
|
||||
case 8:
|
||||
let Json.1237 : Int1 = false;
|
||||
let Json.1236 : {U64, Int1} = Struct {Json.189, Json.1237};
|
||||
let Json.1235 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1236;
|
||||
ret Json.1235;
|
||||
|
||||
case 12:
|
||||
let Json.1240 : Int1 = false;
|
||||
let Json.1239 : {U64, Int1} = Struct {Json.189, Json.1240};
|
||||
let Json.1238 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1239;
|
||||
ret Json.1238;
|
||||
|
||||
case 10:
|
||||
let Json.1243 : Int1 = false;
|
||||
let Json.1242 : {U64, Int1} = Struct {Json.189, Json.1243};
|
||||
let Json.1241 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1242;
|
||||
ret Json.1241;
|
||||
|
||||
case 13:
|
||||
let Json.1246 : Int1 = false;
|
||||
let Json.1245 : {U64, Int1} = Struct {Json.189, Json.1246};
|
||||
let Json.1244 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1245;
|
||||
ret Json.1244;
|
||||
|
||||
case 9:
|
||||
let Json.1249 : Int1 = false;
|
||||
let Json.1248 : {U64, Int1} = Struct {Json.189, Json.1249};
|
||||
let Json.1247 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1248;
|
||||
ret Json.1247;
|
||||
|
||||
default:
|
||||
let Json.1253 : U64 = 1i64;
|
||||
let Json.1252 : U64 = CallByName Num.19 Json.189 Json.1253;
|
||||
let Json.1251 : {U64, Int1} = Struct {Json.1252, Json.190};
|
||||
let Json.1250 : [C {U64, Int1}, C {U64, Int1}] = TagId(1) Json.1251;
|
||||
ret Json.1250;
|
||||
|
||||
|
||||
procedure List.4 (List.107, List.108):
|
||||
let List.503 : U64 = 1i64;
|
||||
let List.502 : List U8 = CallByName List.70 List.107 List.503;
|
||||
let List.501 : List U8 = CallByName List.71 List.502 List.108;
|
||||
ret List.501;
|
||||
procedure Json.214 (Json.215, Json.216):
|
||||
let Json.1196 : List U8 = CallByName Json.26 Json.216;
|
||||
let Json.1195 : List U8 = CallByName List.8 Json.215 Json.1196;
|
||||
ret Json.1195;
|
||||
|
||||
procedure Json.24 (Json.180):
|
||||
let Json.1172 : Str = CallByName Encode.23 Json.180;
|
||||
ret Json.1172;
|
||||
|
||||
procedure Json.25 (Json.183):
|
||||
let Json.184 : List U8 = CallByName Str.12 Json.183;
|
||||
let Json.1254 : U64 = 0i64;
|
||||
let Json.1255 : Int1 = true;
|
||||
let Json.185 : {U64, Int1} = Struct {Json.1254, Json.1255};
|
||||
let Json.1224 : {} = Struct {};
|
||||
inc Json.184;
|
||||
let Json.186 : {U64, Int1} = CallByName List.26 Json.184 Json.185 Json.1224;
|
||||
let Json.1178 : Int1 = StructAtIndex 1 Json.186;
|
||||
let Json.1222 : Int1 = true;
|
||||
let Json.1223 : Int1 = lowlevel Eq Json.1222 Json.1178;
|
||||
if Json.1223 then
|
||||
let Json.1188 : U64 = CallByName List.6 Json.184;
|
||||
let Json.1189 : U64 = 2i64;
|
||||
let Json.1187 : U64 = CallByName Num.19 Json.1188 Json.1189;
|
||||
let Json.1184 : List U8 = CallByName List.68 Json.1187;
|
||||
let Json.1186 : U8 = 34i64;
|
||||
let Json.1185 : List U8 = Array [Json.1186];
|
||||
let Json.1183 : List U8 = CallByName List.8 Json.1184 Json.1185;
|
||||
let Json.1180 : List U8 = CallByName List.8 Json.1183 Json.184;
|
||||
let Json.1182 : U8 = 34i64;
|
||||
let Json.1181 : List U8 = Array [Json.1182];
|
||||
let Json.1179 : List U8 = CallByName List.8 Json.1180 Json.1181;
|
||||
ret Json.1179;
|
||||
else
|
||||
let Json.1221 : U64 = StructAtIndex 0 Json.186;
|
||||
inc Json.184;
|
||||
let Json.1220 : {List U8, List U8} = CallByName List.52 Json.184 Json.1221;
|
||||
let Json.210 : List U8 = StructAtIndex 0 Json.1220;
|
||||
let Json.212 : List U8 = StructAtIndex 1 Json.1220;
|
||||
let Json.1218 : U64 = CallByName List.6 Json.184;
|
||||
dec Json.184;
|
||||
let Json.1219 : U64 = 120i64;
|
||||
let Json.1216 : U64 = CallByName Num.21 Json.1218 Json.1219;
|
||||
let Json.1217 : U64 = 100i64;
|
||||
let Json.1215 : U64 = CallByName Num.94 Json.1216 Json.1217;
|
||||
let Json.1212 : List U8 = CallByName List.68 Json.1215;
|
||||
let Json.1214 : U8 = 34i64;
|
||||
let Json.1213 : List U8 = Array [Json.1214];
|
||||
let Json.1211 : List U8 = CallByName List.8 Json.1212 Json.1213;
|
||||
let Json.213 : List U8 = CallByName List.8 Json.1211 Json.210;
|
||||
let Json.1194 : {} = Struct {};
|
||||
let Json.1191 : List U8 = CallByName List.18 Json.212 Json.213 Json.1194;
|
||||
let Json.1193 : U8 = 34i64;
|
||||
let Json.1192 : List U8 = Array [Json.1193];
|
||||
let Json.1190 : List U8 = CallByName List.8 Json.1191 Json.1192;
|
||||
ret Json.1190;
|
||||
|
||||
procedure Json.26 (Json.217):
|
||||
switch Json.217:
|
||||
case 34:
|
||||
let Json.1197 : List U8 = Array [92i64, 34i64];
|
||||
ret Json.1197;
|
||||
|
||||
case 92:
|
||||
let Json.1198 : List U8 = Array [92i64, 92i64];
|
||||
ret Json.1198;
|
||||
|
||||
case 47:
|
||||
let Json.1199 : List U8 = Array [92i64, 47i64];
|
||||
ret Json.1199;
|
||||
|
||||
case 8:
|
||||
let Json.1201 : U8 = 98i64;
|
||||
let Json.1200 : List U8 = Array [92i64, Json.1201];
|
||||
ret Json.1200;
|
||||
|
||||
case 12:
|
||||
let Json.1203 : U8 = 102i64;
|
||||
let Json.1202 : List U8 = Array [92i64, Json.1203];
|
||||
ret Json.1202;
|
||||
|
||||
case 10:
|
||||
let Json.1205 : U8 = 110i64;
|
||||
let Json.1204 : List U8 = Array [92i64, Json.1205];
|
||||
ret Json.1204;
|
||||
|
||||
case 13:
|
||||
let Json.1207 : U8 = 114i64;
|
||||
let Json.1206 : List U8 = Array [92i64, Json.1207];
|
||||
ret Json.1206;
|
||||
|
||||
case 9:
|
||||
let Json.1209 : U8 = 114i64;
|
||||
let Json.1208 : List U8 = Array [92i64, Json.1209];
|
||||
ret Json.1208;
|
||||
|
||||
default:
|
||||
let Json.1210 : List U8 = Array [Json.217];
|
||||
ret Json.1210;
|
||||
|
||||
|
||||
procedure List.139 (List.140, List.141, List.138):
|
||||
let List.526 : List U8 = CallByName Json.214 List.140 List.141;
|
||||
ret List.526;
|
||||
|
||||
procedure List.18 (List.136, List.137, List.138):
|
||||
let List.508 : List U8 = CallByName List.92 List.136 List.137 List.138;
|
||||
ret List.508;
|
||||
|
||||
procedure List.26 (List.153, List.154, List.155):
|
||||
let List.543 : [C {U64, Int1}, C {U64, Int1}] = CallByName List.92 List.153 List.154 List.155;
|
||||
let List.546 : U8 = 1i64;
|
||||
let List.547 : U8 = GetTagId List.543;
|
||||
let List.548 : Int1 = lowlevel Eq List.546 List.547;
|
||||
if List.548 then
|
||||
let List.156 : {U64, Int1} = UnionAtIndex (Id 1) (Index 0) List.543;
|
||||
ret List.156;
|
||||
else
|
||||
let List.157 : {U64, Int1} = UnionAtIndex (Id 0) (Index 0) List.543;
|
||||
ret List.157;
|
||||
|
||||
procedure List.49 (List.370, List.371):
|
||||
let List.535 : U64 = StructAtIndex 0 List.371;
|
||||
let List.536 : U64 = 0i64;
|
||||
let List.533 : Int1 = CallByName Bool.11 List.535 List.536;
|
||||
if List.533 then
|
||||
dec List.370;
|
||||
let List.534 : List U8 = Array [];
|
||||
ret List.534;
|
||||
else
|
||||
let List.530 : U64 = StructAtIndex 1 List.371;
|
||||
let List.531 : U64 = StructAtIndex 0 List.371;
|
||||
let List.529 : List U8 = CallByName List.72 List.370 List.530 List.531;
|
||||
ret List.529;
|
||||
|
||||
procedure List.52 (List.385, List.386):
|
||||
let List.387 : U64 = CallByName List.6 List.385;
|
||||
joinpoint List.541 List.388:
|
||||
let List.539 : U64 = 0i64;
|
||||
let List.538 : {U64, U64} = Struct {List.388, List.539};
|
||||
inc List.385;
|
||||
let List.389 : List U8 = CallByName List.49 List.385 List.538;
|
||||
let List.537 : U64 = CallByName Num.20 List.387 List.388;
|
||||
let List.528 : {U64, U64} = Struct {List.537, List.388};
|
||||
let List.390 : List U8 = CallByName List.49 List.385 List.528;
|
||||
let List.527 : {List U8, List U8} = Struct {List.389, List.390};
|
||||
ret List.527;
|
||||
in
|
||||
let List.542 : Int1 = CallByName Num.24 List.387 List.386;
|
||||
if List.542 then
|
||||
jump List.541 List.386;
|
||||
else
|
||||
jump List.541 List.387;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.494 : U64 = lowlevel ListLen #Attr.2;
|
||||
ret List.494;
|
||||
let List.507 : U64 = lowlevel ListLen #Attr.2;
|
||||
ret List.507;
|
||||
|
||||
procedure List.70 (#Attr.2, #Attr.3):
|
||||
let List.500 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.500;
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.524 : U8 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.524;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.498 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.498;
|
||||
procedure List.68 (#Attr.2):
|
||||
let List.505 : List U8 = lowlevel ListWithCapacity #Attr.2;
|
||||
ret List.505;
|
||||
|
||||
procedure List.72 (#Attr.2, #Attr.3, #Attr.4):
|
||||
let List.532 : List U8 = lowlevel ListSublist #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.532;
|
||||
|
||||
procedure List.8 (#Attr.2, #Attr.3):
|
||||
let List.504 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.504;
|
||||
let List.503 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.503;
|
||||
|
||||
procedure Num.127 (#Attr.2):
|
||||
let Num.282 : U8 = lowlevel NumIntCast #Attr.2;
|
||||
ret Num.282;
|
||||
procedure List.80 (List.571, List.572, List.573, List.574, List.575):
|
||||
joinpoint List.514 List.433 List.434 List.435 List.436 List.437:
|
||||
let List.516 : Int1 = CallByName Num.22 List.436 List.437;
|
||||
if List.516 then
|
||||
let List.523 : U8 = CallByName List.66 List.433 List.436;
|
||||
let List.517 : List U8 = CallByName List.139 List.434 List.523 List.435;
|
||||
let List.520 : U64 = 1i64;
|
||||
let List.519 : U64 = CallByName Num.19 List.436 List.520;
|
||||
jump List.514 List.433 List.517 List.435 List.519 List.437;
|
||||
else
|
||||
dec List.433;
|
||||
ret List.434;
|
||||
in
|
||||
jump List.514 List.571 List.572 List.573 List.574 List.575;
|
||||
|
||||
procedure List.80 (List.594, List.595, List.596, List.597, List.598):
|
||||
joinpoint List.552 List.433 List.434 List.435 List.436 List.437:
|
||||
let List.554 : Int1 = CallByName Num.22 List.436 List.437;
|
||||
if List.554 then
|
||||
let List.563 : U8 = CallByName List.66 List.433 List.436;
|
||||
let List.555 : [C {U64, Int1}, C {U64, Int1}] = CallByName Json.188 List.434 List.563;
|
||||
let List.560 : U8 = 1i64;
|
||||
let List.561 : U8 = GetTagId List.555;
|
||||
let List.562 : Int1 = lowlevel Eq List.560 List.561;
|
||||
if List.562 then
|
||||
let List.438 : {U64, Int1} = UnionAtIndex (Id 1) (Index 0) List.555;
|
||||
let List.558 : U64 = 1i64;
|
||||
let List.557 : U64 = CallByName Num.19 List.436 List.558;
|
||||
jump List.552 List.433 List.438 List.435 List.557 List.437;
|
||||
else
|
||||
dec List.433;
|
||||
let List.439 : {U64, Int1} = UnionAtIndex (Id 0) (Index 0) List.555;
|
||||
let List.559 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) List.439;
|
||||
ret List.559;
|
||||
else
|
||||
dec List.433;
|
||||
let List.553 : [C {U64, Int1}, C {U64, Int1}] = TagId(1) List.434;
|
||||
ret List.553;
|
||||
in
|
||||
jump List.552 List.594 List.595 List.596 List.597 List.598;
|
||||
|
||||
procedure List.92 (List.430, List.431, List.432):
|
||||
let List.512 : U64 = 0i64;
|
||||
let List.513 : U64 = CallByName List.6 List.430;
|
||||
let List.511 : List U8 = CallByName List.80 List.430 List.431 List.432 List.512 List.513;
|
||||
ret List.511;
|
||||
|
||||
procedure List.92 (List.430, List.431, List.432):
|
||||
let List.550 : U64 = 0i64;
|
||||
let List.551 : U64 = CallByName List.6 List.430;
|
||||
let List.549 : [C {U64, Int1}, C {U64, Int1}] = CallByName List.80 List.430 List.431 List.432 List.550 List.551;
|
||||
ret List.549;
|
||||
|
||||
procedure Num.19 (#Attr.2, #Attr.3):
|
||||
let Num.286 : U64 = lowlevel NumAdd #Attr.2 #Attr.3;
|
||||
ret Num.286;
|
||||
|
||||
procedure Num.20 (#Attr.2, #Attr.3):
|
||||
let Num.289 : U64 = lowlevel NumSub #Attr.2 #Attr.3;
|
||||
ret Num.289;
|
||||
|
||||
procedure Num.21 (#Attr.2, #Attr.3):
|
||||
let Num.284 : U64 = lowlevel NumMul #Attr.2 #Attr.3;
|
||||
ret Num.284;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.288 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
ret Num.288;
|
||||
|
||||
procedure Num.24 (#Attr.2, #Attr.3):
|
||||
let Num.290 : Int1 = lowlevel NumGt #Attr.2 #Attr.3;
|
||||
ret Num.290;
|
||||
|
||||
procedure Num.94 (#Attr.2, #Attr.3):
|
||||
let Num.283 : U64 = lowlevel NumDivCeilUnchecked #Attr.2 #Attr.3;
|
||||
ret Num.283;
|
||||
|
||||
procedure Str.12 (#Attr.2):
|
||||
let Str.312 : List U8 = lowlevel StrToUtf8 #Attr.2;
|
||||
|
@ -84,7 +363,7 @@ procedure Str.9 (Str.79):
|
|||
|
||||
procedure Test.0 ():
|
||||
let Test.9 : Str = "abc";
|
||||
let Test.10 : {} = CallByName Json.1;
|
||||
let Test.10 : [C , C [], C , C , C , C ] = CallByName Json.1;
|
||||
let Test.8 : List U8 = CallByName Encode.26 Test.9 Test.10;
|
||||
let Test.1 : [C {U64, U8}, C Str] = CallByName Str.9 Test.8;
|
||||
let Test.5 : U8 = 1i64;
|
||||
|
|
|
@ -8,11 +8,15 @@ procedure #Derived.3 (#Derived.4, #Derived.5, #Derived.1):
|
|||
ret #Derived_gen.3;
|
||||
in
|
||||
let #Derived_gen.7 : Str = "A";
|
||||
let #Derived_gen.9 : Str = CallByName Json.18 #Derived.1;
|
||||
let #Derived_gen.9 : Str = CallByName Json.24 #Derived.1;
|
||||
let #Derived_gen.8 : List Str = Array [#Derived_gen.9];
|
||||
let #Derived_gen.6 : {Str, List Str} = CallByName Json.22 #Derived_gen.7 #Derived_gen.8;
|
||||
let #Derived_gen.6 : {Str, List Str} = CallByName Json.31 #Derived_gen.7 #Derived_gen.8;
|
||||
jump #Derived_gen.5 #Derived_gen.6;
|
||||
|
||||
procedure Bool.11 (#Attr.2, #Attr.3):
|
||||
let Bool.23 : Int1 = lowlevel Eq #Attr.2 #Attr.3;
|
||||
ret Bool.23;
|
||||
|
||||
procedure Encode.23 (Encode.98):
|
||||
ret Encode.98;
|
||||
|
||||
|
@ -27,11 +31,11 @@ procedure Encode.24 (Encode.99, Encode.107, Encode.101):
|
|||
ret Encode.111;
|
||||
|
||||
procedure Encode.24 (Encode.99, Encode.107, Encode.101):
|
||||
let Encode.118 : List U8 = CallByName Json.144 Encode.99 Encode.101 Encode.107;
|
||||
let Encode.118 : List U8 = CallByName Json.263 Encode.99 Encode.101 Encode.107;
|
||||
ret Encode.118;
|
||||
|
||||
procedure Encode.24 (Encode.99, Encode.107, Encode.101):
|
||||
let Encode.121 : List U8 = CallByName Json.102 Encode.99 Encode.101 Encode.107;
|
||||
let Encode.121 : List U8 = CallByName Json.181 Encode.99 Encode.101 Encode.107;
|
||||
ret Encode.121;
|
||||
|
||||
procedure Encode.26 (Encode.105, Encode.106):
|
||||
|
@ -41,108 +45,318 @@ procedure Encode.26 (Encode.105, Encode.106):
|
|||
ret Encode.108;
|
||||
|
||||
procedure Json.1 ():
|
||||
let Json.483 : {} = Struct {};
|
||||
ret Json.483;
|
||||
let Json.1171 : [C , C [], C , C , C , C ] = TagId(2) ;
|
||||
ret Json.1171;
|
||||
|
||||
procedure Json.102 (Json.103, Json.527, Json.101):
|
||||
let Json.536 : I64 = 34i64;
|
||||
let Json.535 : U8 = CallByName Num.127 Json.536;
|
||||
let Json.533 : List U8 = CallByName List.4 Json.103 Json.535;
|
||||
let Json.534 : List U8 = CallByName Str.12 Json.101;
|
||||
let Json.530 : List U8 = CallByName List.8 Json.533 Json.534;
|
||||
let Json.532 : I64 = 34i64;
|
||||
let Json.531 : U8 = CallByName Num.127 Json.532;
|
||||
let Json.529 : List U8 = CallByName List.4 Json.530 Json.531;
|
||||
ret Json.529;
|
||||
procedure Json.181 (Json.182, Json.1215, Json.180):
|
||||
let Json.1218 : List U8 = CallByName Json.25 Json.180;
|
||||
let Json.1217 : List U8 = CallByName List.8 Json.182 Json.1218;
|
||||
ret Json.1217;
|
||||
|
||||
procedure Json.144 (Json.145, Json.486, #Attr.12):
|
||||
let Json.143 : List Str = StructAtIndex 1 #Attr.12;
|
||||
let Json.142 : Str = StructAtIndex 0 #Attr.12;
|
||||
let Json.524 : I64 = 123i64;
|
||||
let Json.523 : U8 = CallByName Num.127 Json.524;
|
||||
let Json.520 : List U8 = CallByName List.4 Json.145 Json.523;
|
||||
let Json.522 : I64 = 34i64;
|
||||
let Json.521 : U8 = CallByName Num.127 Json.522;
|
||||
let Json.518 : List U8 = CallByName List.4 Json.520 Json.521;
|
||||
let Json.519 : List U8 = CallByName Str.12 Json.142;
|
||||
let Json.515 : List U8 = CallByName List.8 Json.518 Json.519;
|
||||
let Json.517 : I64 = 34i64;
|
||||
let Json.516 : U8 = CallByName Num.127 Json.517;
|
||||
let Json.512 : List U8 = CallByName List.4 Json.515 Json.516;
|
||||
let Json.514 : I64 = 58i64;
|
||||
let Json.513 : U8 = CallByName Num.127 Json.514;
|
||||
let Json.509 : List U8 = CallByName List.4 Json.512 Json.513;
|
||||
let Json.511 : I64 = 91i64;
|
||||
let Json.510 : U8 = CallByName Num.127 Json.511;
|
||||
let Json.147 : List U8 = CallByName List.4 Json.509 Json.510;
|
||||
let Json.508 : U64 = CallByName List.6 Json.143;
|
||||
let Json.496 : {List U8, U64} = Struct {Json.147, Json.508};
|
||||
let Json.497 : {} = Struct {};
|
||||
let Json.495 : {List U8, U64} = CallByName List.18 Json.143 Json.496 Json.497;
|
||||
let Json.149 : List U8 = StructAtIndex 0 Json.495;
|
||||
let Json.494 : I64 = 93i64;
|
||||
let Json.493 : U8 = CallByName Num.127 Json.494;
|
||||
let Json.490 : List U8 = CallByName List.4 Json.149 Json.493;
|
||||
let Json.492 : I64 = 125i64;
|
||||
let Json.491 : U8 = CallByName Num.127 Json.492;
|
||||
let Json.489 : List U8 = CallByName List.4 Json.490 Json.491;
|
||||
ret Json.489;
|
||||
procedure Json.188 (Json.1266, Json.191):
|
||||
let Json.189 : U64 = StructAtIndex 0 Json.1266;
|
||||
let Json.190 : Int1 = StructAtIndex 1 Json.1266;
|
||||
switch Json.191:
|
||||
case 34:
|
||||
let Json.1269 : Int1 = false;
|
||||
let Json.1268 : {U64, Int1} = Struct {Json.189, Json.1269};
|
||||
let Json.1267 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1268;
|
||||
ret Json.1267;
|
||||
|
||||
case 92:
|
||||
let Json.1272 : Int1 = false;
|
||||
let Json.1271 : {U64, Int1} = Struct {Json.189, Json.1272};
|
||||
let Json.1270 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1271;
|
||||
ret Json.1270;
|
||||
|
||||
case 47:
|
||||
let Json.1275 : Int1 = false;
|
||||
let Json.1274 : {U64, Int1} = Struct {Json.189, Json.1275};
|
||||
let Json.1273 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1274;
|
||||
ret Json.1273;
|
||||
|
||||
case 8:
|
||||
let Json.1278 : Int1 = false;
|
||||
let Json.1277 : {U64, Int1} = Struct {Json.189, Json.1278};
|
||||
let Json.1276 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1277;
|
||||
ret Json.1276;
|
||||
|
||||
case 12:
|
||||
let Json.1281 : Int1 = false;
|
||||
let Json.1280 : {U64, Int1} = Struct {Json.189, Json.1281};
|
||||
let Json.1279 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1280;
|
||||
ret Json.1279;
|
||||
|
||||
case 10:
|
||||
let Json.1284 : Int1 = false;
|
||||
let Json.1283 : {U64, Int1} = Struct {Json.189, Json.1284};
|
||||
let Json.1282 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1283;
|
||||
ret Json.1282;
|
||||
|
||||
case 13:
|
||||
let Json.1287 : Int1 = false;
|
||||
let Json.1286 : {U64, Int1} = Struct {Json.189, Json.1287};
|
||||
let Json.1285 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1286;
|
||||
ret Json.1285;
|
||||
|
||||
case 9:
|
||||
let Json.1290 : Int1 = false;
|
||||
let Json.1289 : {U64, Int1} = Struct {Json.189, Json.1290};
|
||||
let Json.1288 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1289;
|
||||
ret Json.1288;
|
||||
|
||||
default:
|
||||
let Json.1294 : U64 = 1i64;
|
||||
let Json.1293 : U64 = CallByName Num.19 Json.189 Json.1294;
|
||||
let Json.1292 : {U64, Int1} = Struct {Json.1293, Json.190};
|
||||
let Json.1291 : [C {U64, Int1}, C {U64, Int1}] = TagId(1) Json.1292;
|
||||
ret Json.1291;
|
||||
|
||||
|
||||
procedure Json.146 (Json.488, Json.152):
|
||||
let Json.150 : List U8 = StructAtIndex 0 Json.488;
|
||||
let Json.151 : U64 = StructAtIndex 1 Json.488;
|
||||
let Json.507 : {} = Struct {};
|
||||
let Json.153 : List U8 = CallByName Encode.24 Json.150 Json.152 Json.507;
|
||||
joinpoint Json.502 Json.154:
|
||||
let Json.500 : U64 = 1i64;
|
||||
let Json.499 : U64 = CallByName Num.20 Json.151 Json.500;
|
||||
let Json.498 : {List U8, U64} = Struct {Json.154, Json.499};
|
||||
ret Json.498;
|
||||
in
|
||||
let Json.506 : U64 = 1i64;
|
||||
let Json.503 : Int1 = CallByName Num.24 Json.151 Json.506;
|
||||
if Json.503 then
|
||||
let Json.505 : I64 = 44i64;
|
||||
let Json.504 : U8 = CallByName Num.127 Json.505;
|
||||
let Json.501 : List U8 = CallByName List.4 Json.153 Json.504;
|
||||
jump Json.502 Json.501;
|
||||
procedure Json.214 (Json.215, Json.216):
|
||||
let Json.1237 : List U8 = CallByName Json.26 Json.216;
|
||||
let Json.1236 : List U8 = CallByName List.8 Json.215 Json.1237;
|
||||
ret Json.1236;
|
||||
|
||||
procedure Json.24 (Json.180):
|
||||
let Json.1213 : Str = CallByName Encode.23 Json.180;
|
||||
ret Json.1213;
|
||||
|
||||
procedure Json.25 (Json.183):
|
||||
let Json.184 : List U8 = CallByName Str.12 Json.183;
|
||||
let Json.1295 : U64 = 0i64;
|
||||
let Json.1296 : Int1 = true;
|
||||
let Json.185 : {U64, Int1} = Struct {Json.1295, Json.1296};
|
||||
let Json.1265 : {} = Struct {};
|
||||
inc Json.184;
|
||||
let Json.186 : {U64, Int1} = CallByName List.26 Json.184 Json.185 Json.1265;
|
||||
let Json.1219 : Int1 = StructAtIndex 1 Json.186;
|
||||
let Json.1263 : Int1 = true;
|
||||
let Json.1264 : Int1 = lowlevel Eq Json.1263 Json.1219;
|
||||
if Json.1264 then
|
||||
let Json.1229 : U64 = CallByName List.6 Json.184;
|
||||
let Json.1230 : U64 = 2i64;
|
||||
let Json.1228 : U64 = CallByName Num.19 Json.1229 Json.1230;
|
||||
let Json.1225 : List U8 = CallByName List.68 Json.1228;
|
||||
let Json.1227 : U8 = 34i64;
|
||||
let Json.1226 : List U8 = Array [Json.1227];
|
||||
let Json.1224 : List U8 = CallByName List.8 Json.1225 Json.1226;
|
||||
let Json.1221 : List U8 = CallByName List.8 Json.1224 Json.184;
|
||||
let Json.1223 : U8 = 34i64;
|
||||
let Json.1222 : List U8 = Array [Json.1223];
|
||||
let Json.1220 : List U8 = CallByName List.8 Json.1221 Json.1222;
|
||||
ret Json.1220;
|
||||
else
|
||||
jump Json.502 Json.153;
|
||||
let Json.1262 : U64 = StructAtIndex 0 Json.186;
|
||||
inc Json.184;
|
||||
let Json.1261 : {List U8, List U8} = CallByName List.52 Json.184 Json.1262;
|
||||
let Json.210 : List U8 = StructAtIndex 0 Json.1261;
|
||||
let Json.212 : List U8 = StructAtIndex 1 Json.1261;
|
||||
let Json.1259 : U64 = CallByName List.6 Json.184;
|
||||
dec Json.184;
|
||||
let Json.1260 : U64 = 120i64;
|
||||
let Json.1257 : U64 = CallByName Num.21 Json.1259 Json.1260;
|
||||
let Json.1258 : U64 = 100i64;
|
||||
let Json.1256 : U64 = CallByName Num.94 Json.1257 Json.1258;
|
||||
let Json.1253 : List U8 = CallByName List.68 Json.1256;
|
||||
let Json.1255 : U8 = 34i64;
|
||||
let Json.1254 : List U8 = Array [Json.1255];
|
||||
let Json.1252 : List U8 = CallByName List.8 Json.1253 Json.1254;
|
||||
let Json.213 : List U8 = CallByName List.8 Json.1252 Json.210;
|
||||
let Json.1235 : {} = Struct {};
|
||||
let Json.1232 : List U8 = CallByName List.18 Json.212 Json.213 Json.1235;
|
||||
let Json.1234 : U8 = 34i64;
|
||||
let Json.1233 : List U8 = Array [Json.1234];
|
||||
let Json.1231 : List U8 = CallByName List.8 Json.1232 Json.1233;
|
||||
ret Json.1231;
|
||||
|
||||
procedure Json.18 (Json.101):
|
||||
let Json.525 : Str = CallByName Encode.23 Json.101;
|
||||
ret Json.525;
|
||||
procedure Json.26 (Json.217):
|
||||
switch Json.217:
|
||||
case 34:
|
||||
let Json.1238 : List U8 = Array [92i64, 34i64];
|
||||
ret Json.1238;
|
||||
|
||||
case 92:
|
||||
let Json.1239 : List U8 = Array [92i64, 92i64];
|
||||
ret Json.1239;
|
||||
|
||||
case 47:
|
||||
let Json.1240 : List U8 = Array [92i64, 47i64];
|
||||
ret Json.1240;
|
||||
|
||||
case 8:
|
||||
let Json.1242 : U8 = 98i64;
|
||||
let Json.1241 : List U8 = Array [92i64, Json.1242];
|
||||
ret Json.1241;
|
||||
|
||||
case 12:
|
||||
let Json.1244 : U8 = 102i64;
|
||||
let Json.1243 : List U8 = Array [92i64, Json.1244];
|
||||
ret Json.1243;
|
||||
|
||||
case 10:
|
||||
let Json.1246 : U8 = 110i64;
|
||||
let Json.1245 : List U8 = Array [92i64, Json.1246];
|
||||
ret Json.1245;
|
||||
|
||||
case 13:
|
||||
let Json.1248 : U8 = 114i64;
|
||||
let Json.1247 : List U8 = Array [92i64, Json.1248];
|
||||
ret Json.1247;
|
||||
|
||||
case 9:
|
||||
let Json.1250 : U8 = 114i64;
|
||||
let Json.1249 : List U8 = Array [92i64, Json.1250];
|
||||
ret Json.1249;
|
||||
|
||||
default:
|
||||
let Json.1251 : List U8 = Array [Json.217];
|
||||
ret Json.1251;
|
||||
|
||||
|
||||
procedure Json.22 (Json.142, Json.143):
|
||||
let Json.485 : {Str, List Str} = Struct {Json.142, Json.143};
|
||||
let Json.484 : {Str, List Str} = CallByName Encode.23 Json.485;
|
||||
ret Json.484;
|
||||
procedure Json.263 (Json.264, Json.1174, #Attr.12):
|
||||
let Json.262 : List Str = StructAtIndex 1 #Attr.12;
|
||||
let Json.261 : Str = StructAtIndex 0 #Attr.12;
|
||||
let Json.1212 : I64 = 123i64;
|
||||
let Json.1211 : U8 = CallByName Num.127 Json.1212;
|
||||
let Json.1208 : List U8 = CallByName List.4 Json.264 Json.1211;
|
||||
let Json.1210 : I64 = 34i64;
|
||||
let Json.1209 : U8 = CallByName Num.127 Json.1210;
|
||||
let Json.1206 : List U8 = CallByName List.4 Json.1208 Json.1209;
|
||||
let Json.1207 : List U8 = CallByName Str.12 Json.261;
|
||||
let Json.1203 : List U8 = CallByName List.8 Json.1206 Json.1207;
|
||||
let Json.1205 : I64 = 34i64;
|
||||
let Json.1204 : U8 = CallByName Num.127 Json.1205;
|
||||
let Json.1200 : List U8 = CallByName List.4 Json.1203 Json.1204;
|
||||
let Json.1202 : I64 = 58i64;
|
||||
let Json.1201 : U8 = CallByName Num.127 Json.1202;
|
||||
let Json.1197 : List U8 = CallByName List.4 Json.1200 Json.1201;
|
||||
let Json.1199 : I64 = 91i64;
|
||||
let Json.1198 : U8 = CallByName Num.127 Json.1199;
|
||||
let Json.267 : List U8 = CallByName List.4 Json.1197 Json.1198;
|
||||
let Json.1196 : U64 = CallByName List.6 Json.262;
|
||||
let Json.1184 : {List U8, U64} = Struct {Json.267, Json.1196};
|
||||
let Json.1183 : {List U8, U64} = CallByName List.18 Json.262 Json.1184 Json.1174;
|
||||
let Json.269 : List U8 = StructAtIndex 0 Json.1183;
|
||||
let Json.1182 : I64 = 93i64;
|
||||
let Json.1181 : U8 = CallByName Num.127 Json.1182;
|
||||
let Json.1178 : List U8 = CallByName List.4 Json.269 Json.1181;
|
||||
let Json.1180 : I64 = 125i64;
|
||||
let Json.1179 : U8 = CallByName Num.127 Json.1180;
|
||||
let Json.1177 : List U8 = CallByName List.4 Json.1178 Json.1179;
|
||||
ret Json.1177;
|
||||
|
||||
procedure Json.266 (Json.1176, Json.272, Json.265):
|
||||
let Json.270 : List U8 = StructAtIndex 0 Json.1176;
|
||||
let Json.271 : U64 = StructAtIndex 1 Json.1176;
|
||||
let Json.273 : List U8 = CallByName Encode.24 Json.270 Json.272 Json.265;
|
||||
joinpoint Json.1190 Json.274:
|
||||
let Json.1188 : U64 = 1i64;
|
||||
let Json.1187 : U64 = CallByName Num.20 Json.271 Json.1188;
|
||||
let Json.1186 : {List U8, U64} = Struct {Json.274, Json.1187};
|
||||
ret Json.1186;
|
||||
in
|
||||
let Json.1194 : U64 = 1i64;
|
||||
let Json.1191 : Int1 = CallByName Num.24 Json.271 Json.1194;
|
||||
if Json.1191 then
|
||||
let Json.1193 : I64 = 44i64;
|
||||
let Json.1192 : U8 = CallByName Num.127 Json.1193;
|
||||
let Json.1189 : List U8 = CallByName List.4 Json.273 Json.1192;
|
||||
jump Json.1190 Json.1189;
|
||||
else
|
||||
jump Json.1190 Json.273;
|
||||
|
||||
procedure Json.31 (Json.261, Json.262):
|
||||
let Json.1173 : {Str, List Str} = Struct {Json.261, Json.262};
|
||||
let Json.1172 : {Str, List Str} = CallByName Encode.23 Json.1173;
|
||||
ret Json.1172;
|
||||
|
||||
procedure List.139 (List.140, List.141, List.138):
|
||||
let List.547 : {List U8, U64} = CallByName Json.146 List.140 List.141;
|
||||
ret List.547;
|
||||
let List.541 : {List U8, U64} = CallByName Json.266 List.140 List.141 List.138;
|
||||
ret List.541;
|
||||
|
||||
procedure List.139 (List.140, List.141, List.138):
|
||||
let List.561 : List U8 = CallByName Json.214 List.140 List.141;
|
||||
ret List.561;
|
||||
|
||||
procedure List.18 (List.136, List.137, List.138):
|
||||
let List.528 : {List U8, U64} = CallByName List.92 List.136 List.137 List.138;
|
||||
ret List.528;
|
||||
let List.522 : {List U8, U64} = CallByName List.92 List.136 List.137 List.138;
|
||||
ret List.522;
|
||||
|
||||
procedure List.18 (List.136, List.137, List.138):
|
||||
let List.542 : List U8 = CallByName List.92 List.136 List.137 List.138;
|
||||
ret List.542;
|
||||
|
||||
procedure List.26 (List.153, List.154, List.155):
|
||||
let List.592 : [C {U64, Int1}, C {U64, Int1}] = CallByName List.92 List.153 List.154 List.155;
|
||||
let List.595 : U8 = 1i64;
|
||||
let List.596 : U8 = GetTagId List.592;
|
||||
let List.597 : Int1 = lowlevel Eq List.595 List.596;
|
||||
if List.597 then
|
||||
let List.156 : {U64, Int1} = UnionAtIndex (Id 1) (Index 0) List.592;
|
||||
ret List.156;
|
||||
else
|
||||
let List.157 : {U64, Int1} = UnionAtIndex (Id 0) (Index 0) List.592;
|
||||
ret List.157;
|
||||
|
||||
procedure List.4 (List.107, List.108):
|
||||
let List.527 : U64 = 1i64;
|
||||
let List.526 : List U8 = CallByName List.70 List.107 List.527;
|
||||
let List.525 : List U8 = CallByName List.71 List.526 List.108;
|
||||
ret List.525;
|
||||
let List.521 : U64 = 1i64;
|
||||
let List.520 : List U8 = CallByName List.70 List.107 List.521;
|
||||
let List.519 : List U8 = CallByName List.71 List.520 List.108;
|
||||
ret List.519;
|
||||
|
||||
procedure List.49 (List.370, List.371):
|
||||
let List.584 : U64 = StructAtIndex 0 List.371;
|
||||
let List.585 : U64 = 0i64;
|
||||
let List.582 : Int1 = CallByName Bool.11 List.584 List.585;
|
||||
if List.582 then
|
||||
dec List.370;
|
||||
let List.583 : List U8 = Array [];
|
||||
ret List.583;
|
||||
else
|
||||
let List.579 : U64 = StructAtIndex 1 List.371;
|
||||
let List.580 : U64 = StructAtIndex 0 List.371;
|
||||
let List.578 : List U8 = CallByName List.72 List.370 List.579 List.580;
|
||||
ret List.578;
|
||||
|
||||
procedure List.52 (List.385, List.386):
|
||||
let List.387 : U64 = CallByName List.6 List.385;
|
||||
joinpoint List.590 List.388:
|
||||
let List.588 : U64 = 0i64;
|
||||
let List.587 : {U64, U64} = Struct {List.388, List.588};
|
||||
inc List.385;
|
||||
let List.389 : List U8 = CallByName List.49 List.385 List.587;
|
||||
let List.586 : U64 = CallByName Num.20 List.387 List.388;
|
||||
let List.577 : {U64, U64} = Struct {List.586, List.388};
|
||||
let List.390 : List U8 = CallByName List.49 List.385 List.577;
|
||||
let List.576 : {List U8, List U8} = Struct {List.389, List.390};
|
||||
ret List.576;
|
||||
in
|
||||
let List.591 : Int1 = CallByName Num.24 List.387 List.386;
|
||||
if List.591 then
|
||||
jump List.590 List.386;
|
||||
else
|
||||
jump List.590 List.387;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.494 : U64 = lowlevel ListLen #Attr.2;
|
||||
ret List.494;
|
||||
let List.562 : U64 = lowlevel ListLen #Attr.2;
|
||||
ret List.562;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.548 : U64 = lowlevel ListLen #Attr.2;
|
||||
ret List.548;
|
||||
let List.564 : U64 = lowlevel ListLen #Attr.2;
|
||||
ret List.564;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.544 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.544;
|
||||
let List.538 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.538;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.558 : U8 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.558;
|
||||
|
||||
procedure List.68 (#Attr.2):
|
||||
let List.575 : List U8 = lowlevel ListWithCapacity #Attr.2;
|
||||
ret List.575;
|
||||
|
||||
procedure List.70 (#Attr.2, #Attr.3):
|
||||
let List.500 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
|
@ -152,51 +366,116 @@ procedure List.71 (#Attr.2, #Attr.3):
|
|||
let List.498 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.498;
|
||||
|
||||
procedure List.8 (#Attr.2, #Attr.3):
|
||||
let List.550 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.550;
|
||||
procedure List.72 (#Attr.2, #Attr.3, #Attr.4):
|
||||
let List.581 : List U8 = lowlevel ListSublist #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.581;
|
||||
|
||||
procedure List.80 (List.560, List.561, List.562, List.563, List.564):
|
||||
joinpoint List.534 List.433 List.434 List.435 List.436 List.437:
|
||||
let List.536 : Int1 = CallByName Num.22 List.436 List.437;
|
||||
if List.536 then
|
||||
let List.543 : Str = CallByName List.66 List.433 List.436;
|
||||
inc List.543;
|
||||
let List.537 : {List U8, U64} = CallByName List.139 List.434 List.543 List.435;
|
||||
let List.540 : U64 = 1i64;
|
||||
let List.539 : U64 = CallByName Num.19 List.436 List.540;
|
||||
jump List.534 List.433 List.537 List.435 List.539 List.437;
|
||||
procedure List.8 (#Attr.2, #Attr.3):
|
||||
let List.573 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.573;
|
||||
|
||||
procedure List.80 (List.622, List.623, List.624, List.625, List.626):
|
||||
joinpoint List.528 List.433 List.434 List.435 List.436 List.437:
|
||||
let List.530 : Int1 = CallByName Num.22 List.436 List.437;
|
||||
if List.530 then
|
||||
let List.537 : Str = CallByName List.66 List.433 List.436;
|
||||
inc List.537;
|
||||
let List.531 : {List U8, U64} = CallByName List.139 List.434 List.537 List.435;
|
||||
let List.534 : U64 = 1i64;
|
||||
let List.533 : U64 = CallByName Num.19 List.436 List.534;
|
||||
jump List.528 List.433 List.531 List.435 List.533 List.437;
|
||||
else
|
||||
dec List.433;
|
||||
ret List.434;
|
||||
in
|
||||
jump List.534 List.560 List.561 List.562 List.563 List.564;
|
||||
jump List.528 List.622 List.623 List.624 List.625 List.626;
|
||||
|
||||
procedure List.80 (List.639, List.640, List.641, List.642, List.643):
|
||||
joinpoint List.548 List.433 List.434 List.435 List.436 List.437:
|
||||
let List.550 : Int1 = CallByName Num.22 List.436 List.437;
|
||||
if List.550 then
|
||||
let List.557 : U8 = CallByName List.66 List.433 List.436;
|
||||
let List.551 : List U8 = CallByName List.139 List.434 List.557 List.435;
|
||||
let List.554 : U64 = 1i64;
|
||||
let List.553 : U64 = CallByName Num.19 List.436 List.554;
|
||||
jump List.548 List.433 List.551 List.435 List.553 List.437;
|
||||
else
|
||||
dec List.433;
|
||||
ret List.434;
|
||||
in
|
||||
jump List.548 List.639 List.640 List.641 List.642 List.643;
|
||||
|
||||
procedure List.80 (List.666, List.667, List.668, List.669, List.670):
|
||||
joinpoint List.601 List.433 List.434 List.435 List.436 List.437:
|
||||
let List.603 : Int1 = CallByName Num.22 List.436 List.437;
|
||||
if List.603 then
|
||||
let List.612 : U8 = CallByName List.66 List.433 List.436;
|
||||
let List.604 : [C {U64, Int1}, C {U64, Int1}] = CallByName Json.188 List.434 List.612;
|
||||
let List.609 : U8 = 1i64;
|
||||
let List.610 : U8 = GetTagId List.604;
|
||||
let List.611 : Int1 = lowlevel Eq List.609 List.610;
|
||||
if List.611 then
|
||||
let List.438 : {U64, Int1} = UnionAtIndex (Id 1) (Index 0) List.604;
|
||||
let List.607 : U64 = 1i64;
|
||||
let List.606 : U64 = CallByName Num.19 List.436 List.607;
|
||||
jump List.601 List.433 List.438 List.435 List.606 List.437;
|
||||
else
|
||||
dec List.433;
|
||||
let List.439 : {U64, Int1} = UnionAtIndex (Id 0) (Index 0) List.604;
|
||||
let List.608 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) List.439;
|
||||
ret List.608;
|
||||
else
|
||||
dec List.433;
|
||||
let List.602 : [C {U64, Int1}, C {U64, Int1}] = TagId(1) List.434;
|
||||
ret List.602;
|
||||
in
|
||||
jump List.601 List.666 List.667 List.668 List.669 List.670;
|
||||
|
||||
procedure List.92 (List.430, List.431, List.432):
|
||||
let List.532 : U64 = 0i64;
|
||||
let List.533 : U64 = CallByName List.6 List.430;
|
||||
let List.531 : {List U8, U64} = CallByName List.80 List.430 List.431 List.432 List.532 List.533;
|
||||
ret List.531;
|
||||
let List.526 : U64 = 0i64;
|
||||
let List.527 : U64 = CallByName List.6 List.430;
|
||||
let List.525 : {List U8, U64} = CallByName List.80 List.430 List.431 List.432 List.526 List.527;
|
||||
ret List.525;
|
||||
|
||||
procedure List.92 (List.430, List.431, List.432):
|
||||
let List.546 : U64 = 0i64;
|
||||
let List.547 : U64 = CallByName List.6 List.430;
|
||||
let List.545 : List U8 = CallByName List.80 List.430 List.431 List.432 List.546 List.547;
|
||||
ret List.545;
|
||||
|
||||
procedure List.92 (List.430, List.431, List.432):
|
||||
let List.599 : U64 = 0i64;
|
||||
let List.600 : U64 = CallByName List.6 List.430;
|
||||
let List.598 : [C {U64, Int1}, C {U64, Int1}] = CallByName List.80 List.430 List.431 List.432 List.599 List.600;
|
||||
ret List.598;
|
||||
|
||||
procedure Num.127 (#Attr.2):
|
||||
let Num.290 : U8 = lowlevel NumIntCast #Attr.2;
|
||||
ret Num.290;
|
||||
let Num.288 : U8 = lowlevel NumIntCast #Attr.2;
|
||||
ret Num.288;
|
||||
|
||||
procedure Num.19 (#Attr.2, #Attr.3):
|
||||
let Num.293 : U64 = lowlevel NumAdd #Attr.2 #Attr.3;
|
||||
ret Num.293;
|
||||
let Num.297 : U64 = lowlevel NumAdd #Attr.2 #Attr.3;
|
||||
ret Num.297;
|
||||
|
||||
procedure Num.20 (#Attr.2, #Attr.3):
|
||||
let Num.291 : U64 = lowlevel NumSub #Attr.2 #Attr.3;
|
||||
ret Num.291;
|
||||
let Num.301 : U64 = lowlevel NumSub #Attr.2 #Attr.3;
|
||||
ret Num.301;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.294 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
procedure Num.21 (#Attr.2, #Attr.3):
|
||||
let Num.294 : U64 = lowlevel NumMul #Attr.2 #Attr.3;
|
||||
ret Num.294;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.300 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
ret Num.300;
|
||||
|
||||
procedure Num.24 (#Attr.2, #Attr.3):
|
||||
let Num.292 : Int1 = lowlevel NumGt #Attr.2 #Attr.3;
|
||||
ret Num.292;
|
||||
let Num.302 : Int1 = lowlevel NumGt #Attr.2 #Attr.3;
|
||||
ret Num.302;
|
||||
|
||||
procedure Num.94 (#Attr.2, #Attr.3):
|
||||
let Num.293 : U64 = lowlevel NumDivCeilUnchecked #Attr.2 #Attr.3;
|
||||
ret Num.293;
|
||||
|
||||
procedure Str.12 (#Attr.2):
|
||||
let Str.313 : List U8 = lowlevel StrToUtf8 #Attr.2;
|
||||
|
@ -226,7 +505,7 @@ procedure Str.9 (Str.79):
|
|||
|
||||
procedure Test.0 ():
|
||||
let Test.12 : Str = "foo";
|
||||
let Test.11 : {} = CallByName Json.1;
|
||||
let Test.11 : [C , C [], C , C , C , C ] = CallByName Json.1;
|
||||
let Test.10 : List U8 = CallByName Encode.26 Test.12 Test.11;
|
||||
let Test.2 : [C {U64, U8}, C Str] = CallByName Str.9 Test.10;
|
||||
let Test.7 : U8 = 1i64;
|
||||
|
|
|
@ -10,12 +10,16 @@ procedure #Derived.4 (#Derived.5, #Derived.6, #Derived.1):
|
|||
let #Derived.2 : Str = StructAtIndex 0 #Derived.1;
|
||||
let #Derived.3 : Str = StructAtIndex 1 #Derived.1;
|
||||
let #Derived_gen.7 : Str = "A";
|
||||
let #Derived_gen.9 : Str = CallByName Json.18 #Derived.2;
|
||||
let #Derived_gen.10 : Str = CallByName Json.18 #Derived.3;
|
||||
let #Derived_gen.9 : Str = CallByName Json.24 #Derived.2;
|
||||
let #Derived_gen.10 : Str = CallByName Json.24 #Derived.3;
|
||||
let #Derived_gen.8 : List Str = Array [#Derived_gen.9, #Derived_gen.10];
|
||||
let #Derived_gen.6 : {Str, List Str} = CallByName Json.22 #Derived_gen.7 #Derived_gen.8;
|
||||
let #Derived_gen.6 : {Str, List Str} = CallByName Json.31 #Derived_gen.7 #Derived_gen.8;
|
||||
jump #Derived_gen.5 #Derived_gen.6;
|
||||
|
||||
procedure Bool.11 (#Attr.2, #Attr.3):
|
||||
let Bool.23 : Int1 = lowlevel Eq #Attr.2 #Attr.3;
|
||||
ret Bool.23;
|
||||
|
||||
procedure Encode.23 (Encode.98):
|
||||
ret Encode.98;
|
||||
|
||||
|
@ -30,11 +34,11 @@ procedure Encode.24 (Encode.99, Encode.107, Encode.101):
|
|||
ret Encode.111;
|
||||
|
||||
procedure Encode.24 (Encode.99, Encode.107, Encode.101):
|
||||
let Encode.118 : List U8 = CallByName Json.144 Encode.99 Encode.101 Encode.107;
|
||||
let Encode.118 : List U8 = CallByName Json.263 Encode.99 Encode.101 Encode.107;
|
||||
ret Encode.118;
|
||||
|
||||
procedure Encode.24 (Encode.99, Encode.107, Encode.101):
|
||||
let Encode.122 : List U8 = CallByName Json.102 Encode.99 Encode.101 Encode.107;
|
||||
let Encode.122 : List U8 = CallByName Json.181 Encode.99 Encode.101 Encode.107;
|
||||
ret Encode.122;
|
||||
|
||||
procedure Encode.26 (Encode.105, Encode.106):
|
||||
|
@ -44,108 +48,318 @@ procedure Encode.26 (Encode.105, Encode.106):
|
|||
ret Encode.108;
|
||||
|
||||
procedure Json.1 ():
|
||||
let Json.483 : {} = Struct {};
|
||||
ret Json.483;
|
||||
let Json.1171 : [C , C [], C , C , C , C ] = TagId(2) ;
|
||||
ret Json.1171;
|
||||
|
||||
procedure Json.102 (Json.103, Json.527, Json.101):
|
||||
let Json.536 : I64 = 34i64;
|
||||
let Json.535 : U8 = CallByName Num.127 Json.536;
|
||||
let Json.533 : List U8 = CallByName List.4 Json.103 Json.535;
|
||||
let Json.534 : List U8 = CallByName Str.12 Json.101;
|
||||
let Json.530 : List U8 = CallByName List.8 Json.533 Json.534;
|
||||
let Json.532 : I64 = 34i64;
|
||||
let Json.531 : U8 = CallByName Num.127 Json.532;
|
||||
let Json.529 : List U8 = CallByName List.4 Json.530 Json.531;
|
||||
ret Json.529;
|
||||
procedure Json.181 (Json.182, Json.1215, Json.180):
|
||||
let Json.1218 : List U8 = CallByName Json.25 Json.180;
|
||||
let Json.1217 : List U8 = CallByName List.8 Json.182 Json.1218;
|
||||
ret Json.1217;
|
||||
|
||||
procedure Json.144 (Json.145, Json.486, #Attr.12):
|
||||
let Json.143 : List Str = StructAtIndex 1 #Attr.12;
|
||||
let Json.142 : Str = StructAtIndex 0 #Attr.12;
|
||||
let Json.524 : I64 = 123i64;
|
||||
let Json.523 : U8 = CallByName Num.127 Json.524;
|
||||
let Json.520 : List U8 = CallByName List.4 Json.145 Json.523;
|
||||
let Json.522 : I64 = 34i64;
|
||||
let Json.521 : U8 = CallByName Num.127 Json.522;
|
||||
let Json.518 : List U8 = CallByName List.4 Json.520 Json.521;
|
||||
let Json.519 : List U8 = CallByName Str.12 Json.142;
|
||||
let Json.515 : List U8 = CallByName List.8 Json.518 Json.519;
|
||||
let Json.517 : I64 = 34i64;
|
||||
let Json.516 : U8 = CallByName Num.127 Json.517;
|
||||
let Json.512 : List U8 = CallByName List.4 Json.515 Json.516;
|
||||
let Json.514 : I64 = 58i64;
|
||||
let Json.513 : U8 = CallByName Num.127 Json.514;
|
||||
let Json.509 : List U8 = CallByName List.4 Json.512 Json.513;
|
||||
let Json.511 : I64 = 91i64;
|
||||
let Json.510 : U8 = CallByName Num.127 Json.511;
|
||||
let Json.147 : List U8 = CallByName List.4 Json.509 Json.510;
|
||||
let Json.508 : U64 = CallByName List.6 Json.143;
|
||||
let Json.496 : {List U8, U64} = Struct {Json.147, Json.508};
|
||||
let Json.497 : {} = Struct {};
|
||||
let Json.495 : {List U8, U64} = CallByName List.18 Json.143 Json.496 Json.497;
|
||||
let Json.149 : List U8 = StructAtIndex 0 Json.495;
|
||||
let Json.494 : I64 = 93i64;
|
||||
let Json.493 : U8 = CallByName Num.127 Json.494;
|
||||
let Json.490 : List U8 = CallByName List.4 Json.149 Json.493;
|
||||
let Json.492 : I64 = 125i64;
|
||||
let Json.491 : U8 = CallByName Num.127 Json.492;
|
||||
let Json.489 : List U8 = CallByName List.4 Json.490 Json.491;
|
||||
ret Json.489;
|
||||
procedure Json.188 (Json.1266, Json.191):
|
||||
let Json.189 : U64 = StructAtIndex 0 Json.1266;
|
||||
let Json.190 : Int1 = StructAtIndex 1 Json.1266;
|
||||
switch Json.191:
|
||||
case 34:
|
||||
let Json.1269 : Int1 = false;
|
||||
let Json.1268 : {U64, Int1} = Struct {Json.189, Json.1269};
|
||||
let Json.1267 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1268;
|
||||
ret Json.1267;
|
||||
|
||||
case 92:
|
||||
let Json.1272 : Int1 = false;
|
||||
let Json.1271 : {U64, Int1} = Struct {Json.189, Json.1272};
|
||||
let Json.1270 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1271;
|
||||
ret Json.1270;
|
||||
|
||||
case 47:
|
||||
let Json.1275 : Int1 = false;
|
||||
let Json.1274 : {U64, Int1} = Struct {Json.189, Json.1275};
|
||||
let Json.1273 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1274;
|
||||
ret Json.1273;
|
||||
|
||||
case 8:
|
||||
let Json.1278 : Int1 = false;
|
||||
let Json.1277 : {U64, Int1} = Struct {Json.189, Json.1278};
|
||||
let Json.1276 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1277;
|
||||
ret Json.1276;
|
||||
|
||||
case 12:
|
||||
let Json.1281 : Int1 = false;
|
||||
let Json.1280 : {U64, Int1} = Struct {Json.189, Json.1281};
|
||||
let Json.1279 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1280;
|
||||
ret Json.1279;
|
||||
|
||||
case 10:
|
||||
let Json.1284 : Int1 = false;
|
||||
let Json.1283 : {U64, Int1} = Struct {Json.189, Json.1284};
|
||||
let Json.1282 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1283;
|
||||
ret Json.1282;
|
||||
|
||||
case 13:
|
||||
let Json.1287 : Int1 = false;
|
||||
let Json.1286 : {U64, Int1} = Struct {Json.189, Json.1287};
|
||||
let Json.1285 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1286;
|
||||
ret Json.1285;
|
||||
|
||||
case 9:
|
||||
let Json.1290 : Int1 = false;
|
||||
let Json.1289 : {U64, Int1} = Struct {Json.189, Json.1290};
|
||||
let Json.1288 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1289;
|
||||
ret Json.1288;
|
||||
|
||||
default:
|
||||
let Json.1294 : U64 = 1i64;
|
||||
let Json.1293 : U64 = CallByName Num.19 Json.189 Json.1294;
|
||||
let Json.1292 : {U64, Int1} = Struct {Json.1293, Json.190};
|
||||
let Json.1291 : [C {U64, Int1}, C {U64, Int1}] = TagId(1) Json.1292;
|
||||
ret Json.1291;
|
||||
|
||||
|
||||
procedure Json.146 (Json.488, Json.152):
|
||||
let Json.150 : List U8 = StructAtIndex 0 Json.488;
|
||||
let Json.151 : U64 = StructAtIndex 1 Json.488;
|
||||
let Json.507 : {} = Struct {};
|
||||
let Json.153 : List U8 = CallByName Encode.24 Json.150 Json.152 Json.507;
|
||||
joinpoint Json.502 Json.154:
|
||||
let Json.500 : U64 = 1i64;
|
||||
let Json.499 : U64 = CallByName Num.20 Json.151 Json.500;
|
||||
let Json.498 : {List U8, U64} = Struct {Json.154, Json.499};
|
||||
ret Json.498;
|
||||
in
|
||||
let Json.506 : U64 = 1i64;
|
||||
let Json.503 : Int1 = CallByName Num.24 Json.151 Json.506;
|
||||
if Json.503 then
|
||||
let Json.505 : I64 = 44i64;
|
||||
let Json.504 : U8 = CallByName Num.127 Json.505;
|
||||
let Json.501 : List U8 = CallByName List.4 Json.153 Json.504;
|
||||
jump Json.502 Json.501;
|
||||
procedure Json.214 (Json.215, Json.216):
|
||||
let Json.1237 : List U8 = CallByName Json.26 Json.216;
|
||||
let Json.1236 : List U8 = CallByName List.8 Json.215 Json.1237;
|
||||
ret Json.1236;
|
||||
|
||||
procedure Json.24 (Json.180):
|
||||
let Json.1297 : Str = CallByName Encode.23 Json.180;
|
||||
ret Json.1297;
|
||||
|
||||
procedure Json.25 (Json.183):
|
||||
let Json.184 : List U8 = CallByName Str.12 Json.183;
|
||||
let Json.1295 : U64 = 0i64;
|
||||
let Json.1296 : Int1 = true;
|
||||
let Json.185 : {U64, Int1} = Struct {Json.1295, Json.1296};
|
||||
let Json.1265 : {} = Struct {};
|
||||
inc Json.184;
|
||||
let Json.186 : {U64, Int1} = CallByName List.26 Json.184 Json.185 Json.1265;
|
||||
let Json.1219 : Int1 = StructAtIndex 1 Json.186;
|
||||
let Json.1263 : Int1 = true;
|
||||
let Json.1264 : Int1 = lowlevel Eq Json.1263 Json.1219;
|
||||
if Json.1264 then
|
||||
let Json.1229 : U64 = CallByName List.6 Json.184;
|
||||
let Json.1230 : U64 = 2i64;
|
||||
let Json.1228 : U64 = CallByName Num.19 Json.1229 Json.1230;
|
||||
let Json.1225 : List U8 = CallByName List.68 Json.1228;
|
||||
let Json.1227 : U8 = 34i64;
|
||||
let Json.1226 : List U8 = Array [Json.1227];
|
||||
let Json.1224 : List U8 = CallByName List.8 Json.1225 Json.1226;
|
||||
let Json.1221 : List U8 = CallByName List.8 Json.1224 Json.184;
|
||||
let Json.1223 : U8 = 34i64;
|
||||
let Json.1222 : List U8 = Array [Json.1223];
|
||||
let Json.1220 : List U8 = CallByName List.8 Json.1221 Json.1222;
|
||||
ret Json.1220;
|
||||
else
|
||||
jump Json.502 Json.153;
|
||||
let Json.1262 : U64 = StructAtIndex 0 Json.186;
|
||||
inc Json.184;
|
||||
let Json.1261 : {List U8, List U8} = CallByName List.52 Json.184 Json.1262;
|
||||
let Json.210 : List U8 = StructAtIndex 0 Json.1261;
|
||||
let Json.212 : List U8 = StructAtIndex 1 Json.1261;
|
||||
let Json.1259 : U64 = CallByName List.6 Json.184;
|
||||
dec Json.184;
|
||||
let Json.1260 : U64 = 120i64;
|
||||
let Json.1257 : U64 = CallByName Num.21 Json.1259 Json.1260;
|
||||
let Json.1258 : U64 = 100i64;
|
||||
let Json.1256 : U64 = CallByName Num.94 Json.1257 Json.1258;
|
||||
let Json.1253 : List U8 = CallByName List.68 Json.1256;
|
||||
let Json.1255 : U8 = 34i64;
|
||||
let Json.1254 : List U8 = Array [Json.1255];
|
||||
let Json.1252 : List U8 = CallByName List.8 Json.1253 Json.1254;
|
||||
let Json.213 : List U8 = CallByName List.8 Json.1252 Json.210;
|
||||
let Json.1235 : {} = Struct {};
|
||||
let Json.1232 : List U8 = CallByName List.18 Json.212 Json.213 Json.1235;
|
||||
let Json.1234 : U8 = 34i64;
|
||||
let Json.1233 : List U8 = Array [Json.1234];
|
||||
let Json.1231 : List U8 = CallByName List.8 Json.1232 Json.1233;
|
||||
ret Json.1231;
|
||||
|
||||
procedure Json.18 (Json.101):
|
||||
let Json.537 : Str = CallByName Encode.23 Json.101;
|
||||
ret Json.537;
|
||||
procedure Json.26 (Json.217):
|
||||
switch Json.217:
|
||||
case 34:
|
||||
let Json.1238 : List U8 = Array [92i64, 34i64];
|
||||
ret Json.1238;
|
||||
|
||||
case 92:
|
||||
let Json.1239 : List U8 = Array [92i64, 92i64];
|
||||
ret Json.1239;
|
||||
|
||||
case 47:
|
||||
let Json.1240 : List U8 = Array [92i64, 47i64];
|
||||
ret Json.1240;
|
||||
|
||||
case 8:
|
||||
let Json.1242 : U8 = 98i64;
|
||||
let Json.1241 : List U8 = Array [92i64, Json.1242];
|
||||
ret Json.1241;
|
||||
|
||||
case 12:
|
||||
let Json.1244 : U8 = 102i64;
|
||||
let Json.1243 : List U8 = Array [92i64, Json.1244];
|
||||
ret Json.1243;
|
||||
|
||||
case 10:
|
||||
let Json.1246 : U8 = 110i64;
|
||||
let Json.1245 : List U8 = Array [92i64, Json.1246];
|
||||
ret Json.1245;
|
||||
|
||||
case 13:
|
||||
let Json.1248 : U8 = 114i64;
|
||||
let Json.1247 : List U8 = Array [92i64, Json.1248];
|
||||
ret Json.1247;
|
||||
|
||||
case 9:
|
||||
let Json.1250 : U8 = 114i64;
|
||||
let Json.1249 : List U8 = Array [92i64, Json.1250];
|
||||
ret Json.1249;
|
||||
|
||||
default:
|
||||
let Json.1251 : List U8 = Array [Json.217];
|
||||
ret Json.1251;
|
||||
|
||||
|
||||
procedure Json.22 (Json.142, Json.143):
|
||||
let Json.485 : {Str, List Str} = Struct {Json.142, Json.143};
|
||||
let Json.484 : {Str, List Str} = CallByName Encode.23 Json.485;
|
||||
ret Json.484;
|
||||
procedure Json.263 (Json.264, Json.1174, #Attr.12):
|
||||
let Json.262 : List Str = StructAtIndex 1 #Attr.12;
|
||||
let Json.261 : Str = StructAtIndex 0 #Attr.12;
|
||||
let Json.1212 : I64 = 123i64;
|
||||
let Json.1211 : U8 = CallByName Num.127 Json.1212;
|
||||
let Json.1208 : List U8 = CallByName List.4 Json.264 Json.1211;
|
||||
let Json.1210 : I64 = 34i64;
|
||||
let Json.1209 : U8 = CallByName Num.127 Json.1210;
|
||||
let Json.1206 : List U8 = CallByName List.4 Json.1208 Json.1209;
|
||||
let Json.1207 : List U8 = CallByName Str.12 Json.261;
|
||||
let Json.1203 : List U8 = CallByName List.8 Json.1206 Json.1207;
|
||||
let Json.1205 : I64 = 34i64;
|
||||
let Json.1204 : U8 = CallByName Num.127 Json.1205;
|
||||
let Json.1200 : List U8 = CallByName List.4 Json.1203 Json.1204;
|
||||
let Json.1202 : I64 = 58i64;
|
||||
let Json.1201 : U8 = CallByName Num.127 Json.1202;
|
||||
let Json.1197 : List U8 = CallByName List.4 Json.1200 Json.1201;
|
||||
let Json.1199 : I64 = 91i64;
|
||||
let Json.1198 : U8 = CallByName Num.127 Json.1199;
|
||||
let Json.267 : List U8 = CallByName List.4 Json.1197 Json.1198;
|
||||
let Json.1196 : U64 = CallByName List.6 Json.262;
|
||||
let Json.1184 : {List U8, U64} = Struct {Json.267, Json.1196};
|
||||
let Json.1183 : {List U8, U64} = CallByName List.18 Json.262 Json.1184 Json.1174;
|
||||
let Json.269 : List U8 = StructAtIndex 0 Json.1183;
|
||||
let Json.1182 : I64 = 93i64;
|
||||
let Json.1181 : U8 = CallByName Num.127 Json.1182;
|
||||
let Json.1178 : List U8 = CallByName List.4 Json.269 Json.1181;
|
||||
let Json.1180 : I64 = 125i64;
|
||||
let Json.1179 : U8 = CallByName Num.127 Json.1180;
|
||||
let Json.1177 : List U8 = CallByName List.4 Json.1178 Json.1179;
|
||||
ret Json.1177;
|
||||
|
||||
procedure Json.266 (Json.1176, Json.272, Json.265):
|
||||
let Json.270 : List U8 = StructAtIndex 0 Json.1176;
|
||||
let Json.271 : U64 = StructAtIndex 1 Json.1176;
|
||||
let Json.273 : List U8 = CallByName Encode.24 Json.270 Json.272 Json.265;
|
||||
joinpoint Json.1190 Json.274:
|
||||
let Json.1188 : U64 = 1i64;
|
||||
let Json.1187 : U64 = CallByName Num.20 Json.271 Json.1188;
|
||||
let Json.1186 : {List U8, U64} = Struct {Json.274, Json.1187};
|
||||
ret Json.1186;
|
||||
in
|
||||
let Json.1194 : U64 = 1i64;
|
||||
let Json.1191 : Int1 = CallByName Num.24 Json.271 Json.1194;
|
||||
if Json.1191 then
|
||||
let Json.1193 : I64 = 44i64;
|
||||
let Json.1192 : U8 = CallByName Num.127 Json.1193;
|
||||
let Json.1189 : List U8 = CallByName List.4 Json.273 Json.1192;
|
||||
jump Json.1190 Json.1189;
|
||||
else
|
||||
jump Json.1190 Json.273;
|
||||
|
||||
procedure Json.31 (Json.261, Json.262):
|
||||
let Json.1173 : {Str, List Str} = Struct {Json.261, Json.262};
|
||||
let Json.1172 : {Str, List Str} = CallByName Encode.23 Json.1173;
|
||||
ret Json.1172;
|
||||
|
||||
procedure List.139 (List.140, List.141, List.138):
|
||||
let List.547 : {List U8, U64} = CallByName Json.146 List.140 List.141;
|
||||
ret List.547;
|
||||
let List.541 : {List U8, U64} = CallByName Json.266 List.140 List.141 List.138;
|
||||
ret List.541;
|
||||
|
||||
procedure List.139 (List.140, List.141, List.138):
|
||||
let List.561 : List U8 = CallByName Json.214 List.140 List.141;
|
||||
ret List.561;
|
||||
|
||||
procedure List.18 (List.136, List.137, List.138):
|
||||
let List.528 : {List U8, U64} = CallByName List.92 List.136 List.137 List.138;
|
||||
ret List.528;
|
||||
let List.522 : {List U8, U64} = CallByName List.92 List.136 List.137 List.138;
|
||||
ret List.522;
|
||||
|
||||
procedure List.18 (List.136, List.137, List.138):
|
||||
let List.542 : List U8 = CallByName List.92 List.136 List.137 List.138;
|
||||
ret List.542;
|
||||
|
||||
procedure List.26 (List.153, List.154, List.155):
|
||||
let List.592 : [C {U64, Int1}, C {U64, Int1}] = CallByName List.92 List.153 List.154 List.155;
|
||||
let List.595 : U8 = 1i64;
|
||||
let List.596 : U8 = GetTagId List.592;
|
||||
let List.597 : Int1 = lowlevel Eq List.595 List.596;
|
||||
if List.597 then
|
||||
let List.156 : {U64, Int1} = UnionAtIndex (Id 1) (Index 0) List.592;
|
||||
ret List.156;
|
||||
else
|
||||
let List.157 : {U64, Int1} = UnionAtIndex (Id 0) (Index 0) List.592;
|
||||
ret List.157;
|
||||
|
||||
procedure List.4 (List.107, List.108):
|
||||
let List.527 : U64 = 1i64;
|
||||
let List.526 : List U8 = CallByName List.70 List.107 List.527;
|
||||
let List.525 : List U8 = CallByName List.71 List.526 List.108;
|
||||
ret List.525;
|
||||
let List.521 : U64 = 1i64;
|
||||
let List.520 : List U8 = CallByName List.70 List.107 List.521;
|
||||
let List.519 : List U8 = CallByName List.71 List.520 List.108;
|
||||
ret List.519;
|
||||
|
||||
procedure List.49 (List.370, List.371):
|
||||
let List.584 : U64 = StructAtIndex 0 List.371;
|
||||
let List.585 : U64 = 0i64;
|
||||
let List.582 : Int1 = CallByName Bool.11 List.584 List.585;
|
||||
if List.582 then
|
||||
dec List.370;
|
||||
let List.583 : List U8 = Array [];
|
||||
ret List.583;
|
||||
else
|
||||
let List.579 : U64 = StructAtIndex 1 List.371;
|
||||
let List.580 : U64 = StructAtIndex 0 List.371;
|
||||
let List.578 : List U8 = CallByName List.72 List.370 List.579 List.580;
|
||||
ret List.578;
|
||||
|
||||
procedure List.52 (List.385, List.386):
|
||||
let List.387 : U64 = CallByName List.6 List.385;
|
||||
joinpoint List.590 List.388:
|
||||
let List.588 : U64 = 0i64;
|
||||
let List.587 : {U64, U64} = Struct {List.388, List.588};
|
||||
inc List.385;
|
||||
let List.389 : List U8 = CallByName List.49 List.385 List.587;
|
||||
let List.586 : U64 = CallByName Num.20 List.387 List.388;
|
||||
let List.577 : {U64, U64} = Struct {List.586, List.388};
|
||||
let List.390 : List U8 = CallByName List.49 List.385 List.577;
|
||||
let List.576 : {List U8, List U8} = Struct {List.389, List.390};
|
||||
ret List.576;
|
||||
in
|
||||
let List.591 : Int1 = CallByName Num.24 List.387 List.386;
|
||||
if List.591 then
|
||||
jump List.590 List.386;
|
||||
else
|
||||
jump List.590 List.387;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.494 : U64 = lowlevel ListLen #Attr.2;
|
||||
ret List.494;
|
||||
let List.562 : U64 = lowlevel ListLen #Attr.2;
|
||||
ret List.562;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.548 : U64 = lowlevel ListLen #Attr.2;
|
||||
ret List.548;
|
||||
let List.564 : U64 = lowlevel ListLen #Attr.2;
|
||||
ret List.564;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.544 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.544;
|
||||
let List.538 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.538;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.558 : U8 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.558;
|
||||
|
||||
procedure List.68 (#Attr.2):
|
||||
let List.575 : List U8 = lowlevel ListWithCapacity #Attr.2;
|
||||
ret List.575;
|
||||
|
||||
procedure List.70 (#Attr.2, #Attr.3):
|
||||
let List.500 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
|
@ -155,51 +369,116 @@ procedure List.71 (#Attr.2, #Attr.3):
|
|||
let List.498 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.498;
|
||||
|
||||
procedure List.8 (#Attr.2, #Attr.3):
|
||||
let List.550 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.550;
|
||||
procedure List.72 (#Attr.2, #Attr.3, #Attr.4):
|
||||
let List.581 : List U8 = lowlevel ListSublist #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.581;
|
||||
|
||||
procedure List.80 (List.560, List.561, List.562, List.563, List.564):
|
||||
joinpoint List.534 List.433 List.434 List.435 List.436 List.437:
|
||||
let List.536 : Int1 = CallByName Num.22 List.436 List.437;
|
||||
if List.536 then
|
||||
let List.543 : Str = CallByName List.66 List.433 List.436;
|
||||
inc List.543;
|
||||
let List.537 : {List U8, U64} = CallByName List.139 List.434 List.543 List.435;
|
||||
let List.540 : U64 = 1i64;
|
||||
let List.539 : U64 = CallByName Num.19 List.436 List.540;
|
||||
jump List.534 List.433 List.537 List.435 List.539 List.437;
|
||||
procedure List.8 (#Attr.2, #Attr.3):
|
||||
let List.573 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.573;
|
||||
|
||||
procedure List.80 (List.622, List.623, List.624, List.625, List.626):
|
||||
joinpoint List.528 List.433 List.434 List.435 List.436 List.437:
|
||||
let List.530 : Int1 = CallByName Num.22 List.436 List.437;
|
||||
if List.530 then
|
||||
let List.537 : Str = CallByName List.66 List.433 List.436;
|
||||
inc List.537;
|
||||
let List.531 : {List U8, U64} = CallByName List.139 List.434 List.537 List.435;
|
||||
let List.534 : U64 = 1i64;
|
||||
let List.533 : U64 = CallByName Num.19 List.436 List.534;
|
||||
jump List.528 List.433 List.531 List.435 List.533 List.437;
|
||||
else
|
||||
dec List.433;
|
||||
ret List.434;
|
||||
in
|
||||
jump List.534 List.560 List.561 List.562 List.563 List.564;
|
||||
jump List.528 List.622 List.623 List.624 List.625 List.626;
|
||||
|
||||
procedure List.80 (List.639, List.640, List.641, List.642, List.643):
|
||||
joinpoint List.548 List.433 List.434 List.435 List.436 List.437:
|
||||
let List.550 : Int1 = CallByName Num.22 List.436 List.437;
|
||||
if List.550 then
|
||||
let List.557 : U8 = CallByName List.66 List.433 List.436;
|
||||
let List.551 : List U8 = CallByName List.139 List.434 List.557 List.435;
|
||||
let List.554 : U64 = 1i64;
|
||||
let List.553 : U64 = CallByName Num.19 List.436 List.554;
|
||||
jump List.548 List.433 List.551 List.435 List.553 List.437;
|
||||
else
|
||||
dec List.433;
|
||||
ret List.434;
|
||||
in
|
||||
jump List.548 List.639 List.640 List.641 List.642 List.643;
|
||||
|
||||
procedure List.80 (List.666, List.667, List.668, List.669, List.670):
|
||||
joinpoint List.601 List.433 List.434 List.435 List.436 List.437:
|
||||
let List.603 : Int1 = CallByName Num.22 List.436 List.437;
|
||||
if List.603 then
|
||||
let List.612 : U8 = CallByName List.66 List.433 List.436;
|
||||
let List.604 : [C {U64, Int1}, C {U64, Int1}] = CallByName Json.188 List.434 List.612;
|
||||
let List.609 : U8 = 1i64;
|
||||
let List.610 : U8 = GetTagId List.604;
|
||||
let List.611 : Int1 = lowlevel Eq List.609 List.610;
|
||||
if List.611 then
|
||||
let List.438 : {U64, Int1} = UnionAtIndex (Id 1) (Index 0) List.604;
|
||||
let List.607 : U64 = 1i64;
|
||||
let List.606 : U64 = CallByName Num.19 List.436 List.607;
|
||||
jump List.601 List.433 List.438 List.435 List.606 List.437;
|
||||
else
|
||||
dec List.433;
|
||||
let List.439 : {U64, Int1} = UnionAtIndex (Id 0) (Index 0) List.604;
|
||||
let List.608 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) List.439;
|
||||
ret List.608;
|
||||
else
|
||||
dec List.433;
|
||||
let List.602 : [C {U64, Int1}, C {U64, Int1}] = TagId(1) List.434;
|
||||
ret List.602;
|
||||
in
|
||||
jump List.601 List.666 List.667 List.668 List.669 List.670;
|
||||
|
||||
procedure List.92 (List.430, List.431, List.432):
|
||||
let List.532 : U64 = 0i64;
|
||||
let List.533 : U64 = CallByName List.6 List.430;
|
||||
let List.531 : {List U8, U64} = CallByName List.80 List.430 List.431 List.432 List.532 List.533;
|
||||
ret List.531;
|
||||
let List.526 : U64 = 0i64;
|
||||
let List.527 : U64 = CallByName List.6 List.430;
|
||||
let List.525 : {List U8, U64} = CallByName List.80 List.430 List.431 List.432 List.526 List.527;
|
||||
ret List.525;
|
||||
|
||||
procedure List.92 (List.430, List.431, List.432):
|
||||
let List.546 : U64 = 0i64;
|
||||
let List.547 : U64 = CallByName List.6 List.430;
|
||||
let List.545 : List U8 = CallByName List.80 List.430 List.431 List.432 List.546 List.547;
|
||||
ret List.545;
|
||||
|
||||
procedure List.92 (List.430, List.431, List.432):
|
||||
let List.599 : U64 = 0i64;
|
||||
let List.600 : U64 = CallByName List.6 List.430;
|
||||
let List.598 : [C {U64, Int1}, C {U64, Int1}] = CallByName List.80 List.430 List.431 List.432 List.599 List.600;
|
||||
ret List.598;
|
||||
|
||||
procedure Num.127 (#Attr.2):
|
||||
let Num.290 : U8 = lowlevel NumIntCast #Attr.2;
|
||||
ret Num.290;
|
||||
let Num.288 : U8 = lowlevel NumIntCast #Attr.2;
|
||||
ret Num.288;
|
||||
|
||||
procedure Num.19 (#Attr.2, #Attr.3):
|
||||
let Num.293 : U64 = lowlevel NumAdd #Attr.2 #Attr.3;
|
||||
ret Num.293;
|
||||
let Num.297 : U64 = lowlevel NumAdd #Attr.2 #Attr.3;
|
||||
ret Num.297;
|
||||
|
||||
procedure Num.20 (#Attr.2, #Attr.3):
|
||||
let Num.291 : U64 = lowlevel NumSub #Attr.2 #Attr.3;
|
||||
ret Num.291;
|
||||
let Num.301 : U64 = lowlevel NumSub #Attr.2 #Attr.3;
|
||||
ret Num.301;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.294 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
procedure Num.21 (#Attr.2, #Attr.3):
|
||||
let Num.294 : U64 = lowlevel NumMul #Attr.2 #Attr.3;
|
||||
ret Num.294;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.300 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
ret Num.300;
|
||||
|
||||
procedure Num.24 (#Attr.2, #Attr.3):
|
||||
let Num.292 : Int1 = lowlevel NumGt #Attr.2 #Attr.3;
|
||||
ret Num.292;
|
||||
let Num.302 : Int1 = lowlevel NumGt #Attr.2 #Attr.3;
|
||||
ret Num.302;
|
||||
|
||||
procedure Num.94 (#Attr.2, #Attr.3):
|
||||
let Num.293 : U64 = lowlevel NumDivCeilUnchecked #Attr.2 #Attr.3;
|
||||
ret Num.293;
|
||||
|
||||
procedure Str.12 (#Attr.2):
|
||||
let Str.313 : List U8 = lowlevel StrToUtf8 #Attr.2;
|
||||
|
@ -231,7 +510,7 @@ procedure Test.0 ():
|
|||
let Test.13 : Str = "foo";
|
||||
let Test.12 : Str = "foo";
|
||||
let Test.1 : {Str, Str} = Struct {Test.12, Test.13};
|
||||
let Test.11 : {} = CallByName Json.1;
|
||||
let Test.11 : [C , C [], C , C , C , C ] = CallByName Json.1;
|
||||
let Test.10 : List U8 = CallByName Encode.26 Test.1 Test.11;
|
||||
let Test.2 : [C {U64, U8}, C Str] = CallByName Str.9 Test.10;
|
||||
let Test.7 : U8 = 1i64;
|
||||
|
|
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -1,3 +1,7 @@
|
|||
procedure Bool.11 (#Attr.2, #Attr.3):
|
||||
let Bool.24 : Int1 = lowlevel Eq #Attr.2 #Attr.3;
|
||||
ret Bool.24;
|
||||
|
||||
procedure Bool.2 ():
|
||||
let Bool.23 : Int1 = true;
|
||||
ret Bool.23;
|
||||
|
@ -16,11 +20,11 @@ procedure Encode.24 (Encode.99, Encode.107, Encode.101):
|
|||
ret Encode.111;
|
||||
|
||||
procedure Encode.24 (Encode.99, Encode.107, Encode.101):
|
||||
let Encode.118 : List U8 = CallByName Json.144 Encode.99 Encode.101 Encode.107;
|
||||
let Encode.118 : List U8 = CallByName Json.263 Encode.99 Encode.101 Encode.107;
|
||||
ret Encode.118;
|
||||
|
||||
procedure Encode.24 (Encode.99, Encode.107, Encode.101):
|
||||
let Encode.123 : List U8 = CallByName Json.102 Encode.99 Encode.101 Encode.107;
|
||||
let Encode.123 : List U8 = CallByName Json.181 Encode.99 Encode.101 Encode.107;
|
||||
ret Encode.123;
|
||||
|
||||
procedure Encode.26 (Encode.105, Encode.106):
|
||||
|
@ -30,104 +34,318 @@ procedure Encode.26 (Encode.105, Encode.106):
|
|||
ret Encode.108;
|
||||
|
||||
procedure Json.1 ():
|
||||
let Json.483 : {} = Struct {};
|
||||
ret Json.483;
|
||||
let Json.1171 : [C , C [], C , C , C , C ] = TagId(2) ;
|
||||
ret Json.1171;
|
||||
|
||||
procedure Json.102 (Json.103, Json.530, Json.101):
|
||||
let Json.539 : I64 = 34i64;
|
||||
let Json.538 : U8 = CallByName Num.127 Json.539;
|
||||
let Json.536 : List U8 = CallByName List.4 Json.103 Json.538;
|
||||
let Json.537 : List U8 = CallByName Str.12 Json.101;
|
||||
let Json.533 : List U8 = CallByName List.8 Json.536 Json.537;
|
||||
let Json.535 : I64 = 34i64;
|
||||
let Json.534 : U8 = CallByName Num.127 Json.535;
|
||||
let Json.532 : List U8 = CallByName List.4 Json.533 Json.534;
|
||||
ret Json.532;
|
||||
procedure Json.181 (Json.182, Json.1218, Json.180):
|
||||
let Json.1221 : List U8 = CallByName Json.25 Json.180;
|
||||
let Json.1220 : List U8 = CallByName List.8 Json.182 Json.1221;
|
||||
ret Json.1220;
|
||||
|
||||
procedure Json.144 (Json.145, Json.486, #Attr.12):
|
||||
let Json.143 : List Str = StructAtIndex 1 #Attr.12;
|
||||
let Json.142 : Str = StructAtIndex 0 #Attr.12;
|
||||
let Json.524 : I64 = 123i64;
|
||||
let Json.523 : U8 = CallByName Num.127 Json.524;
|
||||
let Json.520 : List U8 = CallByName List.4 Json.145 Json.523;
|
||||
let Json.522 : I64 = 34i64;
|
||||
let Json.521 : U8 = CallByName Num.127 Json.522;
|
||||
let Json.518 : List U8 = CallByName List.4 Json.520 Json.521;
|
||||
let Json.519 : List U8 = CallByName Str.12 Json.142;
|
||||
let Json.515 : List U8 = CallByName List.8 Json.518 Json.519;
|
||||
let Json.517 : I64 = 34i64;
|
||||
let Json.516 : U8 = CallByName Num.127 Json.517;
|
||||
let Json.512 : List U8 = CallByName List.4 Json.515 Json.516;
|
||||
let Json.514 : I64 = 58i64;
|
||||
let Json.513 : U8 = CallByName Num.127 Json.514;
|
||||
let Json.509 : List U8 = CallByName List.4 Json.512 Json.513;
|
||||
let Json.511 : I64 = 91i64;
|
||||
let Json.510 : U8 = CallByName Num.127 Json.511;
|
||||
let Json.147 : List U8 = CallByName List.4 Json.509 Json.510;
|
||||
let Json.508 : U64 = CallByName List.6 Json.143;
|
||||
let Json.496 : {List U8, U64} = Struct {Json.147, Json.508};
|
||||
let Json.497 : {} = Struct {};
|
||||
let Json.495 : {List U8, U64} = CallByName List.18 Json.143 Json.496 Json.497;
|
||||
let Json.149 : List U8 = StructAtIndex 0 Json.495;
|
||||
let Json.494 : I64 = 93i64;
|
||||
let Json.493 : U8 = CallByName Num.127 Json.494;
|
||||
let Json.490 : List U8 = CallByName List.4 Json.149 Json.493;
|
||||
let Json.492 : I64 = 125i64;
|
||||
let Json.491 : U8 = CallByName Num.127 Json.492;
|
||||
let Json.489 : List U8 = CallByName List.4 Json.490 Json.491;
|
||||
ret Json.489;
|
||||
procedure Json.188 (Json.1269, Json.191):
|
||||
let Json.189 : U64 = StructAtIndex 0 Json.1269;
|
||||
let Json.190 : Int1 = StructAtIndex 1 Json.1269;
|
||||
switch Json.191:
|
||||
case 34:
|
||||
let Json.1272 : Int1 = false;
|
||||
let Json.1271 : {U64, Int1} = Struct {Json.189, Json.1272};
|
||||
let Json.1270 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1271;
|
||||
ret Json.1270;
|
||||
|
||||
case 92:
|
||||
let Json.1275 : Int1 = false;
|
||||
let Json.1274 : {U64, Int1} = Struct {Json.189, Json.1275};
|
||||
let Json.1273 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1274;
|
||||
ret Json.1273;
|
||||
|
||||
case 47:
|
||||
let Json.1278 : Int1 = false;
|
||||
let Json.1277 : {U64, Int1} = Struct {Json.189, Json.1278};
|
||||
let Json.1276 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1277;
|
||||
ret Json.1276;
|
||||
|
||||
case 8:
|
||||
let Json.1281 : Int1 = false;
|
||||
let Json.1280 : {U64, Int1} = Struct {Json.189, Json.1281};
|
||||
let Json.1279 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1280;
|
||||
ret Json.1279;
|
||||
|
||||
case 12:
|
||||
let Json.1284 : Int1 = false;
|
||||
let Json.1283 : {U64, Int1} = Struct {Json.189, Json.1284};
|
||||
let Json.1282 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1283;
|
||||
ret Json.1282;
|
||||
|
||||
case 10:
|
||||
let Json.1287 : Int1 = false;
|
||||
let Json.1286 : {U64, Int1} = Struct {Json.189, Json.1287};
|
||||
let Json.1285 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1286;
|
||||
ret Json.1285;
|
||||
|
||||
case 13:
|
||||
let Json.1290 : Int1 = false;
|
||||
let Json.1289 : {U64, Int1} = Struct {Json.189, Json.1290};
|
||||
let Json.1288 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1289;
|
||||
ret Json.1288;
|
||||
|
||||
case 9:
|
||||
let Json.1293 : Int1 = false;
|
||||
let Json.1292 : {U64, Int1} = Struct {Json.189, Json.1293};
|
||||
let Json.1291 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) Json.1292;
|
||||
ret Json.1291;
|
||||
|
||||
default:
|
||||
let Json.1297 : U64 = 1i64;
|
||||
let Json.1296 : U64 = CallByName Num.19 Json.189 Json.1297;
|
||||
let Json.1295 : {U64, Int1} = Struct {Json.1296, Json.190};
|
||||
let Json.1294 : [C {U64, Int1}, C {U64, Int1}] = TagId(1) Json.1295;
|
||||
ret Json.1294;
|
||||
|
||||
|
||||
procedure Json.146 (Json.488, Json.152):
|
||||
let Json.150 : List U8 = StructAtIndex 0 Json.488;
|
||||
let Json.151 : U64 = StructAtIndex 1 Json.488;
|
||||
let Json.507 : {} = Struct {};
|
||||
let Json.153 : List U8 = CallByName Encode.24 Json.150 Json.152 Json.507;
|
||||
joinpoint Json.502 Json.154:
|
||||
let Json.500 : U64 = 1i64;
|
||||
let Json.499 : U64 = CallByName Num.20 Json.151 Json.500;
|
||||
let Json.498 : {List U8, U64} = Struct {Json.154, Json.499};
|
||||
ret Json.498;
|
||||
in
|
||||
let Json.506 : U64 = 1i64;
|
||||
let Json.503 : Int1 = CallByName Num.24 Json.151 Json.506;
|
||||
if Json.503 then
|
||||
let Json.505 : I64 = 44i64;
|
||||
let Json.504 : U8 = CallByName Num.127 Json.505;
|
||||
let Json.501 : List U8 = CallByName List.4 Json.153 Json.504;
|
||||
jump Json.502 Json.501;
|
||||
procedure Json.214 (Json.215, Json.216):
|
||||
let Json.1240 : List U8 = CallByName Json.26 Json.216;
|
||||
let Json.1239 : List U8 = CallByName List.8 Json.215 Json.1240;
|
||||
ret Json.1239;
|
||||
|
||||
procedure Json.24 (Json.180):
|
||||
let Json.1300 : Str = CallByName Encode.23 Json.180;
|
||||
ret Json.1300;
|
||||
|
||||
procedure Json.25 (Json.183):
|
||||
let Json.184 : List U8 = CallByName Str.12 Json.183;
|
||||
let Json.1298 : U64 = 0i64;
|
||||
let Json.1299 : Int1 = true;
|
||||
let Json.185 : {U64, Int1} = Struct {Json.1298, Json.1299};
|
||||
let Json.1268 : {} = Struct {};
|
||||
inc Json.184;
|
||||
let Json.186 : {U64, Int1} = CallByName List.26 Json.184 Json.185 Json.1268;
|
||||
let Json.1222 : Int1 = StructAtIndex 1 Json.186;
|
||||
let Json.1266 : Int1 = true;
|
||||
let Json.1267 : Int1 = lowlevel Eq Json.1266 Json.1222;
|
||||
if Json.1267 then
|
||||
let Json.1232 : U64 = CallByName List.6 Json.184;
|
||||
let Json.1233 : U64 = 2i64;
|
||||
let Json.1231 : U64 = CallByName Num.19 Json.1232 Json.1233;
|
||||
let Json.1228 : List U8 = CallByName List.68 Json.1231;
|
||||
let Json.1230 : U8 = 34i64;
|
||||
let Json.1229 : List U8 = Array [Json.1230];
|
||||
let Json.1227 : List U8 = CallByName List.8 Json.1228 Json.1229;
|
||||
let Json.1224 : List U8 = CallByName List.8 Json.1227 Json.184;
|
||||
let Json.1226 : U8 = 34i64;
|
||||
let Json.1225 : List U8 = Array [Json.1226];
|
||||
let Json.1223 : List U8 = CallByName List.8 Json.1224 Json.1225;
|
||||
ret Json.1223;
|
||||
else
|
||||
jump Json.502 Json.153;
|
||||
let Json.1265 : U64 = StructAtIndex 0 Json.186;
|
||||
inc Json.184;
|
||||
let Json.1264 : {List U8, List U8} = CallByName List.52 Json.184 Json.1265;
|
||||
let Json.210 : List U8 = StructAtIndex 0 Json.1264;
|
||||
let Json.212 : List U8 = StructAtIndex 1 Json.1264;
|
||||
let Json.1262 : U64 = CallByName List.6 Json.184;
|
||||
dec Json.184;
|
||||
let Json.1263 : U64 = 120i64;
|
||||
let Json.1260 : U64 = CallByName Num.21 Json.1262 Json.1263;
|
||||
let Json.1261 : U64 = 100i64;
|
||||
let Json.1259 : U64 = CallByName Num.94 Json.1260 Json.1261;
|
||||
let Json.1256 : List U8 = CallByName List.68 Json.1259;
|
||||
let Json.1258 : U8 = 34i64;
|
||||
let Json.1257 : List U8 = Array [Json.1258];
|
||||
let Json.1255 : List U8 = CallByName List.8 Json.1256 Json.1257;
|
||||
let Json.213 : List U8 = CallByName List.8 Json.1255 Json.210;
|
||||
let Json.1238 : {} = Struct {};
|
||||
let Json.1235 : List U8 = CallByName List.18 Json.212 Json.213 Json.1238;
|
||||
let Json.1237 : U8 = 34i64;
|
||||
let Json.1236 : List U8 = Array [Json.1237];
|
||||
let Json.1234 : List U8 = CallByName List.8 Json.1235 Json.1236;
|
||||
ret Json.1234;
|
||||
|
||||
procedure Json.18 (Json.101):
|
||||
let Json.540 : Str = CallByName Encode.23 Json.101;
|
||||
ret Json.540;
|
||||
procedure Json.26 (Json.217):
|
||||
switch Json.217:
|
||||
case 34:
|
||||
let Json.1241 : List U8 = Array [92i64, 34i64];
|
||||
ret Json.1241;
|
||||
|
||||
case 92:
|
||||
let Json.1242 : List U8 = Array [92i64, 92i64];
|
||||
ret Json.1242;
|
||||
|
||||
case 47:
|
||||
let Json.1243 : List U8 = Array [92i64, 47i64];
|
||||
ret Json.1243;
|
||||
|
||||
case 8:
|
||||
let Json.1245 : U8 = 98i64;
|
||||
let Json.1244 : List U8 = Array [92i64, Json.1245];
|
||||
ret Json.1244;
|
||||
|
||||
case 12:
|
||||
let Json.1247 : U8 = 102i64;
|
||||
let Json.1246 : List U8 = Array [92i64, Json.1247];
|
||||
ret Json.1246;
|
||||
|
||||
case 10:
|
||||
let Json.1249 : U8 = 110i64;
|
||||
let Json.1248 : List U8 = Array [92i64, Json.1249];
|
||||
ret Json.1248;
|
||||
|
||||
case 13:
|
||||
let Json.1251 : U8 = 114i64;
|
||||
let Json.1250 : List U8 = Array [92i64, Json.1251];
|
||||
ret Json.1250;
|
||||
|
||||
case 9:
|
||||
let Json.1253 : U8 = 114i64;
|
||||
let Json.1252 : List U8 = Array [92i64, Json.1253];
|
||||
ret Json.1252;
|
||||
|
||||
default:
|
||||
let Json.1254 : List U8 = Array [Json.217];
|
||||
ret Json.1254;
|
||||
|
||||
|
||||
procedure Json.22 (Json.142, Json.143):
|
||||
let Json.526 : {Str, List Str} = Struct {Json.142, Json.143};
|
||||
let Json.525 : {Str, List Str} = CallByName Encode.23 Json.526;
|
||||
ret Json.525;
|
||||
procedure Json.263 (Json.264, Json.1174, #Attr.12):
|
||||
let Json.262 : List Str = StructAtIndex 1 #Attr.12;
|
||||
let Json.261 : Str = StructAtIndex 0 #Attr.12;
|
||||
let Json.1212 : I64 = 123i64;
|
||||
let Json.1211 : U8 = CallByName Num.127 Json.1212;
|
||||
let Json.1208 : List U8 = CallByName List.4 Json.264 Json.1211;
|
||||
let Json.1210 : I64 = 34i64;
|
||||
let Json.1209 : U8 = CallByName Num.127 Json.1210;
|
||||
let Json.1206 : List U8 = CallByName List.4 Json.1208 Json.1209;
|
||||
let Json.1207 : List U8 = CallByName Str.12 Json.261;
|
||||
let Json.1203 : List U8 = CallByName List.8 Json.1206 Json.1207;
|
||||
let Json.1205 : I64 = 34i64;
|
||||
let Json.1204 : U8 = CallByName Num.127 Json.1205;
|
||||
let Json.1200 : List U8 = CallByName List.4 Json.1203 Json.1204;
|
||||
let Json.1202 : I64 = 58i64;
|
||||
let Json.1201 : U8 = CallByName Num.127 Json.1202;
|
||||
let Json.1197 : List U8 = CallByName List.4 Json.1200 Json.1201;
|
||||
let Json.1199 : I64 = 91i64;
|
||||
let Json.1198 : U8 = CallByName Num.127 Json.1199;
|
||||
let Json.267 : List U8 = CallByName List.4 Json.1197 Json.1198;
|
||||
let Json.1196 : U64 = CallByName List.6 Json.262;
|
||||
let Json.1184 : {List U8, U64} = Struct {Json.267, Json.1196};
|
||||
let Json.1183 : {List U8, U64} = CallByName List.18 Json.262 Json.1184 Json.1174;
|
||||
let Json.269 : List U8 = StructAtIndex 0 Json.1183;
|
||||
let Json.1182 : I64 = 93i64;
|
||||
let Json.1181 : U8 = CallByName Num.127 Json.1182;
|
||||
let Json.1178 : List U8 = CallByName List.4 Json.269 Json.1181;
|
||||
let Json.1180 : I64 = 125i64;
|
||||
let Json.1179 : U8 = CallByName Num.127 Json.1180;
|
||||
let Json.1177 : List U8 = CallByName List.4 Json.1178 Json.1179;
|
||||
ret Json.1177;
|
||||
|
||||
procedure Json.266 (Json.1176, Json.272, Json.265):
|
||||
let Json.270 : List U8 = StructAtIndex 0 Json.1176;
|
||||
let Json.271 : U64 = StructAtIndex 1 Json.1176;
|
||||
let Json.273 : List U8 = CallByName Encode.24 Json.270 Json.272 Json.265;
|
||||
joinpoint Json.1190 Json.274:
|
||||
let Json.1188 : U64 = 1i64;
|
||||
let Json.1187 : U64 = CallByName Num.20 Json.271 Json.1188;
|
||||
let Json.1186 : {List U8, U64} = Struct {Json.274, Json.1187};
|
||||
ret Json.1186;
|
||||
in
|
||||
let Json.1194 : U64 = 1i64;
|
||||
let Json.1191 : Int1 = CallByName Num.24 Json.271 Json.1194;
|
||||
if Json.1191 then
|
||||
let Json.1193 : I64 = 44i64;
|
||||
let Json.1192 : U8 = CallByName Num.127 Json.1193;
|
||||
let Json.1189 : List U8 = CallByName List.4 Json.273 Json.1192;
|
||||
jump Json.1190 Json.1189;
|
||||
else
|
||||
jump Json.1190 Json.273;
|
||||
|
||||
procedure Json.31 (Json.261, Json.262):
|
||||
let Json.1214 : {Str, List Str} = Struct {Json.261, Json.262};
|
||||
let Json.1213 : {Str, List Str} = CallByName Encode.23 Json.1214;
|
||||
ret Json.1213;
|
||||
|
||||
procedure List.139 (List.140, List.141, List.138):
|
||||
let List.545 : {List U8, U64} = CallByName Json.146 List.140 List.141;
|
||||
ret List.545;
|
||||
let List.539 : {List U8, U64} = CallByName Json.266 List.140 List.141 List.138;
|
||||
ret List.539;
|
||||
|
||||
procedure List.139 (List.140, List.141, List.138):
|
||||
let List.559 : List U8 = CallByName Json.214 List.140 List.141;
|
||||
ret List.559;
|
||||
|
||||
procedure List.18 (List.136, List.137, List.138):
|
||||
let List.526 : {List U8, U64} = CallByName List.92 List.136 List.137 List.138;
|
||||
ret List.526;
|
||||
let List.520 : {List U8, U64} = CallByName List.92 List.136 List.137 List.138;
|
||||
ret List.520;
|
||||
|
||||
procedure List.18 (List.136, List.137, List.138):
|
||||
let List.540 : List U8 = CallByName List.92 List.136 List.137 List.138;
|
||||
ret List.540;
|
||||
|
||||
procedure List.26 (List.153, List.154, List.155):
|
||||
let List.590 : [C {U64, Int1}, C {U64, Int1}] = CallByName List.92 List.153 List.154 List.155;
|
||||
let List.593 : U8 = 1i64;
|
||||
let List.594 : U8 = GetTagId List.590;
|
||||
let List.595 : Int1 = lowlevel Eq List.593 List.594;
|
||||
if List.595 then
|
||||
let List.156 : {U64, Int1} = UnionAtIndex (Id 1) (Index 0) List.590;
|
||||
ret List.156;
|
||||
else
|
||||
let List.157 : {U64, Int1} = UnionAtIndex (Id 0) (Index 0) List.590;
|
||||
ret List.157;
|
||||
|
||||
procedure List.4 (List.107, List.108):
|
||||
let List.525 : U64 = 1i64;
|
||||
let List.524 : List U8 = CallByName List.70 List.107 List.525;
|
||||
let List.523 : List U8 = CallByName List.71 List.524 List.108;
|
||||
ret List.523;
|
||||
let List.519 : U64 = 1i64;
|
||||
let List.518 : List U8 = CallByName List.70 List.107 List.519;
|
||||
let List.517 : List U8 = CallByName List.71 List.518 List.108;
|
||||
ret List.517;
|
||||
|
||||
procedure List.49 (List.370, List.371):
|
||||
let List.582 : U64 = StructAtIndex 0 List.371;
|
||||
let List.583 : U64 = 0i64;
|
||||
let List.580 : Int1 = CallByName Bool.11 List.582 List.583;
|
||||
if List.580 then
|
||||
dec List.370;
|
||||
let List.581 : List U8 = Array [];
|
||||
ret List.581;
|
||||
else
|
||||
let List.577 : U64 = StructAtIndex 1 List.371;
|
||||
let List.578 : U64 = StructAtIndex 0 List.371;
|
||||
let List.576 : List U8 = CallByName List.72 List.370 List.577 List.578;
|
||||
ret List.576;
|
||||
|
||||
procedure List.52 (List.385, List.386):
|
||||
let List.387 : U64 = CallByName List.6 List.385;
|
||||
joinpoint List.588 List.388:
|
||||
let List.586 : U64 = 0i64;
|
||||
let List.585 : {U64, U64} = Struct {List.388, List.586};
|
||||
inc List.385;
|
||||
let List.389 : List U8 = CallByName List.49 List.385 List.585;
|
||||
let List.584 : U64 = CallByName Num.20 List.387 List.388;
|
||||
let List.575 : {U64, U64} = Struct {List.584, List.388};
|
||||
let List.390 : List U8 = CallByName List.49 List.385 List.575;
|
||||
let List.574 : {List U8, List U8} = Struct {List.389, List.390};
|
||||
ret List.574;
|
||||
in
|
||||
let List.589 : Int1 = CallByName Num.24 List.387 List.386;
|
||||
if List.589 then
|
||||
jump List.588 List.386;
|
||||
else
|
||||
jump List.588 List.387;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.546 : U64 = lowlevel ListLen #Attr.2;
|
||||
ret List.546;
|
||||
let List.560 : U64 = lowlevel ListLen #Attr.2;
|
||||
ret List.560;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.562 : U64 = lowlevel ListLen #Attr.2;
|
||||
ret List.562;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.542 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.542;
|
||||
let List.536 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.536;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.556 : U8 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.556;
|
||||
|
||||
procedure List.68 (#Attr.2):
|
||||
let List.573 : List U8 = lowlevel ListWithCapacity #Attr.2;
|
||||
ret List.573;
|
||||
|
||||
procedure List.70 (#Attr.2, #Attr.3):
|
||||
let List.498 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
|
@ -137,51 +355,116 @@ procedure List.71 (#Attr.2, #Attr.3):
|
|||
let List.496 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.496;
|
||||
|
||||
procedure List.8 (#Attr.2, #Attr.3):
|
||||
let List.548 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.548;
|
||||
procedure List.72 (#Attr.2, #Attr.3, #Attr.4):
|
||||
let List.579 : List U8 = lowlevel ListSublist #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.579;
|
||||
|
||||
procedure List.80 (List.558, List.559, List.560, List.561, List.562):
|
||||
joinpoint List.532 List.433 List.434 List.435 List.436 List.437:
|
||||
let List.534 : Int1 = CallByName Num.22 List.436 List.437;
|
||||
if List.534 then
|
||||
let List.541 : Str = CallByName List.66 List.433 List.436;
|
||||
inc List.541;
|
||||
let List.535 : {List U8, U64} = CallByName List.139 List.434 List.541 List.435;
|
||||
let List.538 : U64 = 1i64;
|
||||
let List.537 : U64 = CallByName Num.19 List.436 List.538;
|
||||
jump List.532 List.433 List.535 List.435 List.537 List.437;
|
||||
procedure List.8 (#Attr.2, #Attr.3):
|
||||
let List.571 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.571;
|
||||
|
||||
procedure List.80 (List.620, List.621, List.622, List.623, List.624):
|
||||
joinpoint List.526 List.433 List.434 List.435 List.436 List.437:
|
||||
let List.528 : Int1 = CallByName Num.22 List.436 List.437;
|
||||
if List.528 then
|
||||
let List.535 : Str = CallByName List.66 List.433 List.436;
|
||||
inc List.535;
|
||||
let List.529 : {List U8, U64} = CallByName List.139 List.434 List.535 List.435;
|
||||
let List.532 : U64 = 1i64;
|
||||
let List.531 : U64 = CallByName Num.19 List.436 List.532;
|
||||
jump List.526 List.433 List.529 List.435 List.531 List.437;
|
||||
else
|
||||
dec List.433;
|
||||
ret List.434;
|
||||
in
|
||||
jump List.532 List.558 List.559 List.560 List.561 List.562;
|
||||
jump List.526 List.620 List.621 List.622 List.623 List.624;
|
||||
|
||||
procedure List.80 (List.637, List.638, List.639, List.640, List.641):
|
||||
joinpoint List.546 List.433 List.434 List.435 List.436 List.437:
|
||||
let List.548 : Int1 = CallByName Num.22 List.436 List.437;
|
||||
if List.548 then
|
||||
let List.555 : U8 = CallByName List.66 List.433 List.436;
|
||||
let List.549 : List U8 = CallByName List.139 List.434 List.555 List.435;
|
||||
let List.552 : U64 = 1i64;
|
||||
let List.551 : U64 = CallByName Num.19 List.436 List.552;
|
||||
jump List.546 List.433 List.549 List.435 List.551 List.437;
|
||||
else
|
||||
dec List.433;
|
||||
ret List.434;
|
||||
in
|
||||
jump List.546 List.637 List.638 List.639 List.640 List.641;
|
||||
|
||||
procedure List.80 (List.664, List.665, List.666, List.667, List.668):
|
||||
joinpoint List.599 List.433 List.434 List.435 List.436 List.437:
|
||||
let List.601 : Int1 = CallByName Num.22 List.436 List.437;
|
||||
if List.601 then
|
||||
let List.610 : U8 = CallByName List.66 List.433 List.436;
|
||||
let List.602 : [C {U64, Int1}, C {U64, Int1}] = CallByName Json.188 List.434 List.610;
|
||||
let List.607 : U8 = 1i64;
|
||||
let List.608 : U8 = GetTagId List.602;
|
||||
let List.609 : Int1 = lowlevel Eq List.607 List.608;
|
||||
if List.609 then
|
||||
let List.438 : {U64, Int1} = UnionAtIndex (Id 1) (Index 0) List.602;
|
||||
let List.605 : U64 = 1i64;
|
||||
let List.604 : U64 = CallByName Num.19 List.436 List.605;
|
||||
jump List.599 List.433 List.438 List.435 List.604 List.437;
|
||||
else
|
||||
dec List.433;
|
||||
let List.439 : {U64, Int1} = UnionAtIndex (Id 0) (Index 0) List.602;
|
||||
let List.606 : [C {U64, Int1}, C {U64, Int1}] = TagId(0) List.439;
|
||||
ret List.606;
|
||||
else
|
||||
dec List.433;
|
||||
let List.600 : [C {U64, Int1}, C {U64, Int1}] = TagId(1) List.434;
|
||||
ret List.600;
|
||||
in
|
||||
jump List.599 List.664 List.665 List.666 List.667 List.668;
|
||||
|
||||
procedure List.92 (List.430, List.431, List.432):
|
||||
let List.530 : U64 = 0i64;
|
||||
let List.531 : U64 = CallByName List.6 List.430;
|
||||
let List.529 : {List U8, U64} = CallByName List.80 List.430 List.431 List.432 List.530 List.531;
|
||||
ret List.529;
|
||||
let List.524 : U64 = 0i64;
|
||||
let List.525 : U64 = CallByName List.6 List.430;
|
||||
let List.523 : {List U8, U64} = CallByName List.80 List.430 List.431 List.432 List.524 List.525;
|
||||
ret List.523;
|
||||
|
||||
procedure List.92 (List.430, List.431, List.432):
|
||||
let List.544 : U64 = 0i64;
|
||||
let List.545 : U64 = CallByName List.6 List.430;
|
||||
let List.543 : List U8 = CallByName List.80 List.430 List.431 List.432 List.544 List.545;
|
||||
ret List.543;
|
||||
|
||||
procedure List.92 (List.430, List.431, List.432):
|
||||
let List.597 : U64 = 0i64;
|
||||
let List.598 : U64 = CallByName List.6 List.430;
|
||||
let List.596 : [C {U64, Int1}, C {U64, Int1}] = CallByName List.80 List.430 List.431 List.432 List.597 List.598;
|
||||
ret List.596;
|
||||
|
||||
procedure Num.127 (#Attr.2):
|
||||
let Num.290 : U8 = lowlevel NumIntCast #Attr.2;
|
||||
ret Num.290;
|
||||
let Num.288 : U8 = lowlevel NumIntCast #Attr.2;
|
||||
ret Num.288;
|
||||
|
||||
procedure Num.19 (#Attr.2, #Attr.3):
|
||||
let Num.293 : U64 = lowlevel NumAdd #Attr.2 #Attr.3;
|
||||
ret Num.293;
|
||||
let Num.297 : U64 = lowlevel NumAdd #Attr.2 #Attr.3;
|
||||
ret Num.297;
|
||||
|
||||
procedure Num.20 (#Attr.2, #Attr.3):
|
||||
let Num.291 : U64 = lowlevel NumSub #Attr.2 #Attr.3;
|
||||
ret Num.291;
|
||||
let Num.301 : U64 = lowlevel NumSub #Attr.2 #Attr.3;
|
||||
ret Num.301;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.294 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
procedure Num.21 (#Attr.2, #Attr.3):
|
||||
let Num.294 : U64 = lowlevel NumMul #Attr.2 #Attr.3;
|
||||
ret Num.294;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.300 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
ret Num.300;
|
||||
|
||||
procedure Num.24 (#Attr.2, #Attr.3):
|
||||
let Num.292 : Int1 = lowlevel NumGt #Attr.2 #Attr.3;
|
||||
ret Num.292;
|
||||
let Num.302 : Int1 = lowlevel NumGt #Attr.2 #Attr.3;
|
||||
ret Num.302;
|
||||
|
||||
procedure Num.94 (#Attr.2, #Attr.3):
|
||||
let Num.293 : U64 = lowlevel NumDivCeilUnchecked #Attr.2 #Attr.3;
|
||||
ret Num.293;
|
||||
|
||||
procedure Str.12 (#Attr.2):
|
||||
let Str.299 : List U8 = lowlevel StrToUtf8 #Attr.2;
|
||||
|
@ -208,22 +491,22 @@ procedure Test.5 (Test.6, Test.7, Test.4):
|
|||
let Test.29 : Str = StructAtIndex 0 Test.4;
|
||||
let #Derived_gen.0 : Str = StructAtIndex 1 Test.4;
|
||||
dec #Derived_gen.0;
|
||||
let Test.28 : Str = CallByName Json.18 Test.29;
|
||||
let Test.28 : Str = CallByName Json.24 Test.29;
|
||||
let Test.27 : List Str = Array [Test.28];
|
||||
let Test.19 : {Str, List Str} = CallByName Json.22 Test.26 Test.27;
|
||||
let Test.19 : {Str, List Str} = CallByName Json.31 Test.26 Test.27;
|
||||
jump Test.20 Test.19;
|
||||
else
|
||||
let Test.21 : Str = "B";
|
||||
let Test.24 : Str = StructAtIndex 1 Test.4;
|
||||
let #Derived_gen.1 : Str = StructAtIndex 0 Test.4;
|
||||
dec #Derived_gen.1;
|
||||
let Test.23 : Str = CallByName Json.18 Test.24;
|
||||
let Test.23 : Str = CallByName Json.24 Test.24;
|
||||
let Test.22 : List Str = Array [Test.23];
|
||||
let Test.19 : {Str, List Str} = CallByName Json.22 Test.21 Test.22;
|
||||
let Test.19 : {Str, List Str} = CallByName Json.31 Test.21 Test.22;
|
||||
jump Test.20 Test.19;
|
||||
|
||||
procedure Test.0 ():
|
||||
let Test.12 : {Str, Str} = CallByName Test.3;
|
||||
let Test.13 : {} = CallByName Json.1;
|
||||
let Test.13 : [C , C [], C , C , C , C ] = CallByName Json.1;
|
||||
let Test.11 : List U8 = CallByName Encode.26 Test.12 Test.13;
|
||||
ret Test.11;
|
||||
|
|
|
@ -11,7 +11,7 @@ procedure #Derived.2 (#Derived.3, #Derived.4, #Attr.12):
|
|||
in
|
||||
let #Derived_gen.16 : Str = "A";
|
||||
let #Derived_gen.17 : List [] = Array [];
|
||||
let #Derived_gen.15 : {Str, List []} = CallByName Json.22 #Derived_gen.16 #Derived_gen.17;
|
||||
let #Derived_gen.15 : {Str, List []} = CallByName Json.31 #Derived_gen.16 #Derived_gen.17;
|
||||
jump #Derived_gen.14 #Derived_gen.15;
|
||||
|
||||
procedure #Derived.5 (#Derived.6):
|
||||
|
@ -27,7 +27,7 @@ procedure #Derived.7 (#Derived.8, #Derived.9, #Attr.12):
|
|||
in
|
||||
let #Derived_gen.7 : Str = "B";
|
||||
let #Derived_gen.8 : List [] = Array [];
|
||||
let #Derived_gen.6 : {Str, List []} = CallByName Json.22 #Derived_gen.7 #Derived_gen.8;
|
||||
let #Derived_gen.6 : {Str, List []} = CallByName Json.31 #Derived_gen.7 #Derived_gen.8;
|
||||
jump #Derived_gen.5 #Derived_gen.6;
|
||||
|
||||
procedure Bool.2 ():
|
||||
|
@ -56,7 +56,7 @@ procedure Encode.24 (Encode.99, Encode.107, Encode.101):
|
|||
ret Encode.111;
|
||||
|
||||
procedure Encode.24 (Encode.99, Encode.107, Encode.101):
|
||||
let Encode.118 : List U8 = CallByName Json.144 Encode.99 Encode.101 Encode.107;
|
||||
let Encode.118 : List U8 = CallByName Json.263 Encode.99 Encode.101 Encode.107;
|
||||
ret Encode.118;
|
||||
|
||||
procedure Encode.24 (Encode.99, Encode.107, Encode.101):
|
||||
|
@ -72,7 +72,7 @@ procedure Encode.24 (Encode.99, Encode.107, Encode.101):
|
|||
|
||||
|
||||
procedure Encode.24 (Encode.99, Encode.107, Encode.101):
|
||||
let Encode.134 : List U8 = CallByName Json.144 Encode.99 Encode.101 Encode.107;
|
||||
let Encode.134 : List U8 = CallByName Json.263 Encode.99 Encode.101 Encode.107;
|
||||
ret Encode.134;
|
||||
|
||||
procedure Encode.26 (Encode.105, Encode.106):
|
||||
|
@ -82,133 +82,129 @@ procedure Encode.26 (Encode.105, Encode.106):
|
|||
ret Encode.108;
|
||||
|
||||
procedure Json.1 ():
|
||||
let Json.483 : {} = Struct {};
|
||||
ret Json.483;
|
||||
let Json.1171 : [C , C [], C , C , C , C ] = TagId(2) ;
|
||||
ret Json.1171;
|
||||
|
||||
procedure Json.144 (Json.145, Json.486, #Attr.12):
|
||||
let Json.143 : List [C {}, C {}] = StructAtIndex 1 #Attr.12;
|
||||
let Json.142 : Str = StructAtIndex 0 #Attr.12;
|
||||
let Json.524 : I64 = 123i64;
|
||||
let Json.523 : U8 = CallByName Num.127 Json.524;
|
||||
let Json.520 : List U8 = CallByName List.4 Json.145 Json.523;
|
||||
let Json.522 : I64 = 34i64;
|
||||
let Json.521 : U8 = CallByName Num.127 Json.522;
|
||||
let Json.518 : List U8 = CallByName List.4 Json.520 Json.521;
|
||||
let Json.519 : List U8 = CallByName Str.12 Json.142;
|
||||
let Json.515 : List U8 = CallByName List.8 Json.518 Json.519;
|
||||
let Json.517 : I64 = 34i64;
|
||||
let Json.516 : U8 = CallByName Num.127 Json.517;
|
||||
let Json.512 : List U8 = CallByName List.4 Json.515 Json.516;
|
||||
let Json.514 : I64 = 58i64;
|
||||
let Json.513 : U8 = CallByName Num.127 Json.514;
|
||||
let Json.509 : List U8 = CallByName List.4 Json.512 Json.513;
|
||||
let Json.511 : I64 = 91i64;
|
||||
let Json.510 : U8 = CallByName Num.127 Json.511;
|
||||
let Json.147 : List U8 = CallByName List.4 Json.509 Json.510;
|
||||
let Json.508 : U64 = CallByName List.6 Json.143;
|
||||
let Json.496 : {List U8, U64} = Struct {Json.147, Json.508};
|
||||
let Json.497 : {} = Struct {};
|
||||
let Json.495 : {List U8, U64} = CallByName List.18 Json.143 Json.496 Json.497;
|
||||
let Json.149 : List U8 = StructAtIndex 0 Json.495;
|
||||
let Json.494 : I64 = 93i64;
|
||||
let Json.493 : U8 = CallByName Num.127 Json.494;
|
||||
let Json.490 : List U8 = CallByName List.4 Json.149 Json.493;
|
||||
let Json.492 : I64 = 125i64;
|
||||
let Json.491 : U8 = CallByName Num.127 Json.492;
|
||||
let Json.489 : List U8 = CallByName List.4 Json.490 Json.491;
|
||||
ret Json.489;
|
||||
procedure Json.263 (Json.264, Json.1174, #Attr.12):
|
||||
let Json.262 : List [C {}, C {}] = StructAtIndex 1 #Attr.12;
|
||||
let Json.261 : Str = StructAtIndex 0 #Attr.12;
|
||||
let Json.1212 : I64 = 123i64;
|
||||
let Json.1211 : U8 = CallByName Num.127 Json.1212;
|
||||
let Json.1208 : List U8 = CallByName List.4 Json.264 Json.1211;
|
||||
let Json.1210 : I64 = 34i64;
|
||||
let Json.1209 : U8 = CallByName Num.127 Json.1210;
|
||||
let Json.1206 : List U8 = CallByName List.4 Json.1208 Json.1209;
|
||||
let Json.1207 : List U8 = CallByName Str.12 Json.261;
|
||||
let Json.1203 : List U8 = CallByName List.8 Json.1206 Json.1207;
|
||||
let Json.1205 : I64 = 34i64;
|
||||
let Json.1204 : U8 = CallByName Num.127 Json.1205;
|
||||
let Json.1200 : List U8 = CallByName List.4 Json.1203 Json.1204;
|
||||
let Json.1202 : I64 = 58i64;
|
||||
let Json.1201 : U8 = CallByName Num.127 Json.1202;
|
||||
let Json.1197 : List U8 = CallByName List.4 Json.1200 Json.1201;
|
||||
let Json.1199 : I64 = 91i64;
|
||||
let Json.1198 : U8 = CallByName Num.127 Json.1199;
|
||||
let Json.267 : List U8 = CallByName List.4 Json.1197 Json.1198;
|
||||
let Json.1196 : U64 = CallByName List.6 Json.262;
|
||||
let Json.1184 : {List U8, U64} = Struct {Json.267, Json.1196};
|
||||
let Json.1183 : {List U8, U64} = CallByName List.18 Json.262 Json.1184 Json.1174;
|
||||
let Json.269 : List U8 = StructAtIndex 0 Json.1183;
|
||||
let Json.1182 : I64 = 93i64;
|
||||
let Json.1181 : U8 = CallByName Num.127 Json.1182;
|
||||
let Json.1178 : List U8 = CallByName List.4 Json.269 Json.1181;
|
||||
let Json.1180 : I64 = 125i64;
|
||||
let Json.1179 : U8 = CallByName Num.127 Json.1180;
|
||||
let Json.1177 : List U8 = CallByName List.4 Json.1178 Json.1179;
|
||||
ret Json.1177;
|
||||
|
||||
procedure Json.144 (Json.145, Json.486, #Attr.12):
|
||||
let Json.143 : List [] = StructAtIndex 1 #Attr.12;
|
||||
let Json.142 : Str = StructAtIndex 0 #Attr.12;
|
||||
let Json.574 : I64 = 123i64;
|
||||
let Json.573 : U8 = CallByName Num.127 Json.574;
|
||||
let Json.570 : List U8 = CallByName List.4 Json.145 Json.573;
|
||||
let Json.572 : I64 = 34i64;
|
||||
let Json.571 : U8 = CallByName Num.127 Json.572;
|
||||
let Json.568 : List U8 = CallByName List.4 Json.570 Json.571;
|
||||
let Json.569 : List U8 = CallByName Str.12 Json.142;
|
||||
let Json.565 : List U8 = CallByName List.8 Json.568 Json.569;
|
||||
let Json.567 : I64 = 34i64;
|
||||
let Json.566 : U8 = CallByName Num.127 Json.567;
|
||||
let Json.562 : List U8 = CallByName List.4 Json.565 Json.566;
|
||||
let Json.564 : I64 = 58i64;
|
||||
let Json.563 : U8 = CallByName Num.127 Json.564;
|
||||
let Json.559 : List U8 = CallByName List.4 Json.562 Json.563;
|
||||
let Json.561 : I64 = 91i64;
|
||||
let Json.560 : U8 = CallByName Num.127 Json.561;
|
||||
let Json.147 : List U8 = CallByName List.4 Json.559 Json.560;
|
||||
let Json.558 : U64 = CallByName List.6 Json.143;
|
||||
let Json.546 : {List U8, U64} = Struct {Json.147, Json.558};
|
||||
let Json.547 : {} = Struct {};
|
||||
let Json.545 : {List U8, U64} = CallByName List.18 Json.143 Json.546 Json.547;
|
||||
let Json.149 : List U8 = StructAtIndex 0 Json.545;
|
||||
let Json.544 : I64 = 93i64;
|
||||
let Json.543 : U8 = CallByName Num.127 Json.544;
|
||||
let Json.540 : List U8 = CallByName List.4 Json.149 Json.543;
|
||||
let Json.542 : I64 = 125i64;
|
||||
let Json.541 : U8 = CallByName Num.127 Json.542;
|
||||
let Json.539 : List U8 = CallByName List.4 Json.540 Json.541;
|
||||
ret Json.539;
|
||||
procedure Json.263 (Json.264, Json.1174, #Attr.12):
|
||||
let Json.262 : List [] = StructAtIndex 1 #Attr.12;
|
||||
let Json.261 : Str = StructAtIndex 0 #Attr.12;
|
||||
let Json.1263 : I64 = 123i64;
|
||||
let Json.1262 : U8 = CallByName Num.127 Json.1263;
|
||||
let Json.1259 : List U8 = CallByName List.4 Json.264 Json.1262;
|
||||
let Json.1261 : I64 = 34i64;
|
||||
let Json.1260 : U8 = CallByName Num.127 Json.1261;
|
||||
let Json.1257 : List U8 = CallByName List.4 Json.1259 Json.1260;
|
||||
let Json.1258 : List U8 = CallByName Str.12 Json.261;
|
||||
let Json.1254 : List U8 = CallByName List.8 Json.1257 Json.1258;
|
||||
let Json.1256 : I64 = 34i64;
|
||||
let Json.1255 : U8 = CallByName Num.127 Json.1256;
|
||||
let Json.1251 : List U8 = CallByName List.4 Json.1254 Json.1255;
|
||||
let Json.1253 : I64 = 58i64;
|
||||
let Json.1252 : U8 = CallByName Num.127 Json.1253;
|
||||
let Json.1248 : List U8 = CallByName List.4 Json.1251 Json.1252;
|
||||
let Json.1250 : I64 = 91i64;
|
||||
let Json.1249 : U8 = CallByName Num.127 Json.1250;
|
||||
let Json.267 : List U8 = CallByName List.4 Json.1248 Json.1249;
|
||||
let Json.1247 : U64 = CallByName List.6 Json.262;
|
||||
let Json.1235 : {List U8, U64} = Struct {Json.267, Json.1247};
|
||||
let Json.1234 : {List U8, U64} = CallByName List.18 Json.262 Json.1235 Json.1174;
|
||||
let Json.269 : List U8 = StructAtIndex 0 Json.1234;
|
||||
let Json.1233 : I64 = 93i64;
|
||||
let Json.1232 : U8 = CallByName Num.127 Json.1233;
|
||||
let Json.1229 : List U8 = CallByName List.4 Json.269 Json.1232;
|
||||
let Json.1231 : I64 = 125i64;
|
||||
let Json.1230 : U8 = CallByName Num.127 Json.1231;
|
||||
let Json.1228 : List U8 = CallByName List.4 Json.1229 Json.1230;
|
||||
ret Json.1228;
|
||||
|
||||
procedure Json.146 (Json.488, Json.152):
|
||||
let Json.150 : List U8 = StructAtIndex 0 Json.488;
|
||||
let Json.151 : U64 = StructAtIndex 1 Json.488;
|
||||
let Json.507 : {} = Struct {};
|
||||
let Json.153 : List U8 = CallByName Encode.24 Json.150 Json.152 Json.507;
|
||||
joinpoint Json.502 Json.154:
|
||||
let Json.500 : U64 = 1i64;
|
||||
let Json.499 : U64 = CallByName Num.20 Json.151 Json.500;
|
||||
let Json.498 : {List U8, U64} = Struct {Json.154, Json.499};
|
||||
ret Json.498;
|
||||
procedure Json.266 (Json.1176, Json.272, Json.265):
|
||||
let Json.270 : List U8 = StructAtIndex 0 Json.1176;
|
||||
let Json.271 : U64 = StructAtIndex 1 Json.1176;
|
||||
let Json.273 : List U8 = CallByName Encode.24 Json.270 Json.272 Json.265;
|
||||
joinpoint Json.1190 Json.274:
|
||||
let Json.1188 : U64 = 1i64;
|
||||
let Json.1187 : U64 = CallByName Num.20 Json.271 Json.1188;
|
||||
let Json.1186 : {List U8, U64} = Struct {Json.274, Json.1187};
|
||||
ret Json.1186;
|
||||
in
|
||||
let Json.506 : U64 = 1i64;
|
||||
let Json.503 : Int1 = CallByName Num.24 Json.151 Json.506;
|
||||
if Json.503 then
|
||||
let Json.505 : I64 = 44i64;
|
||||
let Json.504 : U8 = CallByName Num.127 Json.505;
|
||||
let Json.501 : List U8 = CallByName List.4 Json.153 Json.504;
|
||||
jump Json.502 Json.501;
|
||||
let Json.1194 : U64 = 1i64;
|
||||
let Json.1191 : Int1 = CallByName Num.24 Json.271 Json.1194;
|
||||
if Json.1191 then
|
||||
let Json.1193 : I64 = 44i64;
|
||||
let Json.1192 : U8 = CallByName Num.127 Json.1193;
|
||||
let Json.1189 : List U8 = CallByName List.4 Json.273 Json.1192;
|
||||
jump Json.1190 Json.1189;
|
||||
else
|
||||
jump Json.502 Json.153;
|
||||
jump Json.1190 Json.273;
|
||||
|
||||
procedure Json.146 (Json.488, Json.152):
|
||||
let Json.150 : List U8 = StructAtIndex 0 Json.488;
|
||||
let Json.151 : U64 = StructAtIndex 1 Json.488;
|
||||
let Json.557 : {} = Struct {};
|
||||
let Json.153 : List U8 = CallByName Encode.24 Json.150 Json.152 Json.557;
|
||||
joinpoint Json.552 Json.154:
|
||||
let Json.550 : U64 = 1i64;
|
||||
let Json.549 : U64 = CallByName Num.20 Json.151 Json.550;
|
||||
let Json.548 : {List U8, U64} = Struct {Json.154, Json.549};
|
||||
ret Json.548;
|
||||
procedure Json.266 (Json.1176, Json.272, Json.265):
|
||||
let Json.270 : List U8 = StructAtIndex 0 Json.1176;
|
||||
let Json.271 : U64 = StructAtIndex 1 Json.1176;
|
||||
let Json.273 : List U8 = CallByName Encode.24 Json.270 Json.272 Json.265;
|
||||
joinpoint Json.1241 Json.274:
|
||||
let Json.1239 : U64 = 1i64;
|
||||
let Json.1238 : U64 = CallByName Num.20 Json.271 Json.1239;
|
||||
let Json.1237 : {List U8, U64} = Struct {Json.274, Json.1238};
|
||||
ret Json.1237;
|
||||
in
|
||||
let Json.556 : U64 = 1i64;
|
||||
let Json.553 : Int1 = CallByName Num.24 Json.151 Json.556;
|
||||
if Json.553 then
|
||||
let Json.555 : I64 = 44i64;
|
||||
let Json.554 : U8 = CallByName Num.127 Json.555;
|
||||
let Json.551 : List U8 = CallByName List.4 Json.153 Json.554;
|
||||
jump Json.552 Json.551;
|
||||
let Json.1245 : U64 = 1i64;
|
||||
let Json.1242 : Int1 = CallByName Num.24 Json.271 Json.1245;
|
||||
if Json.1242 then
|
||||
let Json.1244 : I64 = 44i64;
|
||||
let Json.1243 : U8 = CallByName Num.127 Json.1244;
|
||||
let Json.1240 : List U8 = CallByName List.4 Json.273 Json.1243;
|
||||
jump Json.1241 Json.1240;
|
||||
else
|
||||
jump Json.552 Json.153;
|
||||
jump Json.1241 Json.273;
|
||||
|
||||
procedure Json.22 (Json.142, Json.143):
|
||||
let Json.526 : {Str, List [C {}, C {}]} = Struct {Json.142, Json.143};
|
||||
let Json.525 : {Str, List [C {}, C {}]} = CallByName Encode.23 Json.526;
|
||||
ret Json.525;
|
||||
procedure Json.31 (Json.261, Json.262):
|
||||
let Json.1214 : {Str, List [C {}, C {}]} = Struct {Json.261, Json.262};
|
||||
let Json.1213 : {Str, List [C {}, C {}]} = CallByName Encode.23 Json.1214;
|
||||
ret Json.1213;
|
||||
|
||||
procedure Json.22 (Json.142, Json.143):
|
||||
let Json.576 : {Str, List []} = Struct {Json.142, Json.143};
|
||||
let Json.575 : {Str, List []} = CallByName Encode.23 Json.576;
|
||||
ret Json.575;
|
||||
procedure Json.31 (Json.261, Json.262):
|
||||
let Json.1265 : {Str, List []} = Struct {Json.261, Json.262};
|
||||
let Json.1264 : {Str, List []} = CallByName Encode.23 Json.1265;
|
||||
ret Json.1264;
|
||||
|
||||
procedure List.139 (List.140, List.141, List.138):
|
||||
let List.539 : {List U8, U64} = CallByName Json.146 List.140 List.141;
|
||||
let List.539 : {List U8, U64} = CallByName Json.266 List.140 List.141 List.138;
|
||||
ret List.539;
|
||||
|
||||
procedure List.139 (List.140, List.141, List.138):
|
||||
let List.612 : {List U8, U64} = CallByName Json.146 List.140 List.141;
|
||||
let List.612 : {List U8, U64} = CallByName Json.266 List.140 List.141 List.138;
|
||||
ret List.612;
|
||||
|
||||
procedure List.18 (List.136, List.137, List.138):
|
||||
|
@ -340,18 +336,18 @@ procedure Test.5 (Test.6, Test.7, Test.4):
|
|||
let Test.32 : {} = StructAtIndex 0 Test.4;
|
||||
let Test.31 : [C {}, C {}] = CallByName #Derived.0 Test.32;
|
||||
let Test.30 : List [C {}, C {}] = Array [Test.31];
|
||||
let Test.22 : {Str, List [C {}, C {}]} = CallByName Json.22 Test.29 Test.30;
|
||||
let Test.22 : {Str, List [C {}, C {}]} = CallByName Json.31 Test.29 Test.30;
|
||||
jump Test.23 Test.22;
|
||||
else
|
||||
let Test.24 : Str = "B";
|
||||
let Test.27 : {} = StructAtIndex 1 Test.4;
|
||||
let Test.26 : [C {}, C {}] = CallByName #Derived.5 Test.27;
|
||||
let Test.25 : List [C {}, C {}] = Array [Test.26];
|
||||
let Test.22 : {Str, List [C {}, C {}]} = CallByName Json.22 Test.24 Test.25;
|
||||
let Test.22 : {Str, List [C {}, C {}]} = CallByName Json.31 Test.24 Test.25;
|
||||
jump Test.23 Test.22;
|
||||
|
||||
procedure Test.0 ():
|
||||
let Test.13 : {{}, {}} = CallByName Test.3;
|
||||
let Test.14 : {} = CallByName Json.1;
|
||||
let Test.14 : [C , C [], C , C , C , C ] = CallByName Json.1;
|
||||
let Test.12 : List U8 = CallByName Encode.26 Test.13 Test.14;
|
||||
ret Test.12;
|
||||
|
|
|
@ -1486,7 +1486,7 @@ fn encode_custom_type() {
|
|||
|> Encode.appendWith (Encode.string "Hello, World!\n") fmt
|
||||
|
||||
main =
|
||||
result = Str.fromUtf8 (Encode.toBytes (@HelloWorld {}) Json.toUtf8)
|
||||
result = Str.fromUtf8 (Encode.toBytes (@HelloWorld {}) Json.json)
|
||||
when result is
|
||||
Ok s -> s
|
||||
_ -> "<bad>"
|
||||
|
@ -1503,7 +1503,7 @@ fn encode_derived_string() {
|
|||
provides [main] to "./platform"
|
||||
|
||||
main =
|
||||
result = Str.fromUtf8 (Encode.toBytes "abc" Json.toUtf8)
|
||||
result = Str.fromUtf8 (Encode.toBytes "abc" Json.json)
|
||||
when result is
|
||||
Ok s -> s
|
||||
_ -> "<bad>"
|
||||
|
@ -1521,7 +1521,7 @@ fn encode_derived_record() {
|
|||
provides [main] to "./platform"
|
||||
|
||||
main =
|
||||
result = Str.fromUtf8 (Encode.toBytes {a: "a"} Json.toUtf8)
|
||||
result = Str.fromUtf8 (Encode.toBytes {a: "a"} Json.json)
|
||||
when result is
|
||||
Ok s -> s
|
||||
_ -> "<bad>"
|
||||
|
@ -1863,7 +1863,7 @@ fn encode_derived_record_one_field_string() {
|
|||
provides [main] to "./platform"
|
||||
|
||||
main =
|
||||
result = Str.fromUtf8 (Encode.toBytes {a: "foo"} Json.toUtf8)
|
||||
result = Str.fromUtf8 (Encode.toBytes {a: "foo"} Json.json)
|
||||
when result is
|
||||
Ok s -> s
|
||||
_ -> "<bad>"
|
||||
|
@ -1880,7 +1880,7 @@ fn encode_derived_record_two_field_strings() {
|
|||
provides [main] to "./platform"
|
||||
|
||||
main =
|
||||
result = Str.fromUtf8 (Encode.toBytes {a: "foo", b: "bar"} Json.toUtf8)
|
||||
result = Str.fromUtf8 (Encode.toBytes {a: "foo", b: "bar"} Json.json)
|
||||
when result is
|
||||
Ok s -> s
|
||||
_ -> "<bad>"
|
||||
|
@ -1897,7 +1897,7 @@ fn encode_derived_nested_record_string() {
|
|||
provides [main] to "./platform"
|
||||
|
||||
main =
|
||||
result = Str.fromUtf8 (Encode.toBytes {a: {b: "bar"}} Json.toUtf8)
|
||||
result = Str.fromUtf8 (Encode.toBytes {a: {b: "bar"}} Json.json)
|
||||
when result is
|
||||
Ok s -> s
|
||||
_ -> "<bad>"
|
||||
|
@ -1916,7 +1916,7 @@ fn encode_derived_tag_one_field_string() {
|
|||
main =
|
||||
x : [A Str]
|
||||
x = A "foo"
|
||||
result = Str.fromUtf8 (Encode.toBytes x Json.toUtf8)
|
||||
result = Str.fromUtf8 (Encode.toBytes x Json.json)
|
||||
when result is
|
||||
Ok s -> s
|
||||
_ -> "<bad>"
|
||||
|
@ -1957,7 +1957,7 @@ fn encode_derived_tag_two_payloads_string() {
|
|||
main =
|
||||
x : [A Str Str]
|
||||
x = A "foo" "foo"
|
||||
result = Str.fromUtf8 (Encode.toBytes x Json.toUtf8)
|
||||
result = Str.fromUtf8 (Encode.toBytes x Json.json)
|
||||
when result is
|
||||
Ok s -> s
|
||||
_ -> "<bad>"
|
||||
|
@ -2228,7 +2228,7 @@ fn issue_4749() {
|
|||
|
||||
expect
|
||||
input = [82, 111, 99]
|
||||
got = Decode.fromBytes input Json.fromUtf8
|
||||
got = Decode.fromBytes input Json.json
|
||||
got == Ok "Roc"
|
||||
"###
|
||||
)
|
||||
|
@ -2467,7 +2467,7 @@ fn issue_4772_weakened_monomorphic_destructure() {
|
|||
interface Test exposes [] imports [Json]
|
||||
|
||||
getNumber =
|
||||
{ result, rest } = Decode.fromBytesPartial (Str.toUtf8 "-1234") Json.fromUtf8
|
||||
{ result, rest } = Decode.fromBytesPartial (Str.toUtf8 "-1234") Json.json
|
||||
|
||||
when result is
|
||||
Ok val ->
|
||||
|
@ -2676,7 +2676,7 @@ fn unspecialized_lambda_set_unification_keeps_all_concrete_types_without_unifica
|
|||
accessor = @Q {a : A, b: B}
|
||||
|
||||
main =
|
||||
Encode.toBytes accessor Json.toUtf8
|
||||
Encode.toBytes accessor Json.json
|
||||
"#
|
||||
)
|
||||
}
|
||||
|
@ -2716,7 +2716,7 @@ fn unspecialized_lambda_set_unification_does_not_duplicate_identical_concrete_ty
|
|||
@Q {a : x, b: x}
|
||||
|
||||
main =
|
||||
Encode.toBytes accessor Json.toUtf8
|
||||
Encode.toBytes accessor Json.json
|
||||
"#
|
||||
)
|
||||
}
|
||||
|
|
|
@ -10,7 +10,7 @@ toEncoder = \@HelloWorld {} ->
|
|||
|> Encode.appendWith (Encode.string "Hello, World!\n") fmt
|
||||
|
||||
f =
|
||||
when Str.fromUtf8 (Encode.toBytes (@HelloWorld {}) Json.toUtf8) is
|
||||
when Str.fromUtf8 (Encode.toBytes (@HelloWorld {}) Json.json) is
|
||||
Ok s -> s
|
||||
_ -> "<bad>"
|
||||
|
||||
|
|
|
@ -10878,7 +10878,7 @@ I recommend using camelCase. It's the standard style in Roc code!
|
|||
app "test" imports [Json] provides [main] to "./platform"
|
||||
|
||||
main =
|
||||
decoded = Str.toUtf8 "{\"first\":\"ab\",\"second\":\"cd\"}" |> Decode.fromBytes Json.fromUtf8
|
||||
decoded = Str.toUtf8 "{\"first\":\"ab\",\"second\":\"cd\"}" |> Decode.fromBytes Json.json
|
||||
when decoded is
|
||||
Ok rcd -> rcd.first rcd.second
|
||||
_ -> "something went wrong"
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue