def lex_array_after_separator_two_simple

qasim-bend-kit@0.1.0.2 · proof/JSON_SourceProof.bend:1238

import qasim-bend-kit@0.1.0.2/proof/JSON_SourceProof.bend as JSONSourceProof
import Base
import qasim-bend-kit@0.1.0.2/libs/JSON.bend as J

1238def lex_array_after_separator_two_simple(+first: SimpleValue,
1239                                         +second: SimpleValue,
1240                                         +mark: JsonPunctuation,
1241                                         +suffix: String,
1242                                         +acc: List<&2, J.Lexeme>) -> {J.lex_scan(render_after_separator(J.Arr{simple_value(first) <> simple_value(second) <> Nil{}}, SCon{punctuation_char(mark), SNil{}} ++ suffix), J.Outside{}, SNil{}, acc) == J.lex_scan(suffix, J.Outside{}, SNil{}, J.Punctuation{punctuation_char(mark)} <> List.append(&2, J.Lexeme, reverse_source_task(J.Arr{simple_value(first) <> simple_value(second) <> Nil{}}, RenderAfterSeparator{}), acc)) : List<&2, J.Lexeme>}:
1243    lex_array_after_separator_many(simple_value(first), simple_value(second), Nil{}, punctuation_char(mark), suffix, acc, punctuation_action(mark, suffix),
1244        lex_simple_task_suffix_before_punctuation(first, RenderWhole{}, ',', render_after_separator(J.Arr{simple_value(second) <> Nil{}}, SCon{punctuation_char(mark), SNil{}} ++ suffix), acc, {==}),
1245        Equal.trans(List<&2, J.Lexeme>,
1246            J.lex_scan(render_after_separator(J.Arr{simple_value(second) <> Nil{}}, SCon{punctuation_char(mark), SNil{}} ++ suffix),
1247                J.Outside{}, SNil{}, J.Punctuation{','} <> List.append(&2, J.Lexeme, reverse_source_task(simple_value(first), RenderWhole{}), acc)),
1248            J.lex_scan(suffix, J.Outside{}, SNil{}, J.Punctuation{punctuation_char(mark)} <> J.Punctuation{']'} <>
1249                List.append(&2, J.Lexeme, reverse_source_task(simple_value(second), RenderWhole{}),
1250                    J.Punctuation{','} <> List.append(&2, J.Lexeme, reverse_source_task(simple_value(first), RenderWhole{}), acc))),
1251            J.lex_scan(suffix, J.Outside{}, SNil{}, J.Punctuation{punctuation_char(mark)} <>
1252                List.append(&2, J.Lexeme, reverse_source_task(J.Arr{simple_value(second) <> Nil{}}, RenderAfterSeparator{}),
1253                    J.Punctuation{','} <> List.append(&2, J.Lexeme, reverse_source_task(simple_value(first), RenderWhole{}), acc))),
1254            lex_array_after_separator_single(simple_value(second), punctuation_char(mark), suffix,
1255                J.Punctuation{','} <> List.append(&2, J.Lexeme, reverse_source_task(simple_value(first), RenderWhole{}), acc), punctuation_action(mark, suffix),
1256                lex_simple_task_suffix_before_punctuation(second, RenderWhole{}, ']', SCon{punctuation_char(mark), SNil{}} ++ suffix,
1257                    J.Punctuation{','} <> List.append(&2, J.Lexeme, reverse_source_task(simple_value(first), RenderWhole{}), acc), {==})),
1258            Equal.cong(List<&2, J.Lexeme>, List<&2, J.Lexeme>, items =>
1259                    J.lex_scan(suffix, J.Outside{}, SNil{}, J.Punctuation{punctuation_char(mark)} <>
1260                    List.append(&2, J.Lexeme, items, J.Punctuation{','} <>
1261                        List.append(&2, J.Lexeme, reverse_source_task(simple_value(first), RenderWhole{}), acc))),
1262                J.Punctuation{']'} <> reverse_source_task(simple_value(second), RenderWhole{}),
1263                reverse_source_task(J.Arr{simple_value(second) <> Nil{}}, RenderAfterSeparator{}),
1264                Equal.sym(List<&2, J.Lexeme>, reverse_source_task(J.Arr{simple_value(second) <> Nil{}}, RenderAfterSeparator{}),
1265                    J.Punctuation{']'} <> reverse_source_task(simple_value(second), RenderWhole{}),
1266                    reverse_source_array_after_separator(simple_value(second), Nil{})))))

Uses (24)

Used by (0)

No other definition uses this definition.