def empty_object_lex

qasim-bend-kit@0.1.0.2 · proof/JSON_RenderLexProof.bend:377

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

377def empty_object_lex(+mode: SP.RenderMode,
378                     +boundary: Boundary,
379                     +acc: List<&2, J.Lexeme>) -> {J.lex_scan(SP.render_task(J.Obj{Nil{}}, mode, boundary_text(boundary)), J.Outside{}, SNil{}, acc) == finish(boundary, push(J.Obj{Nil{}}, mode, acc)) : List<&2, J.Lexeme>}:
380    match boundary:
381        case End{}: empty_object_end(mode, acc)
382        case Delimited{mark, suffix}:
383            Equal.trans(List<&2, J.Lexeme>,
384                J.lex_scan(SP.render_task(J.Obj{Nil{}}, mode, boundary_text(Delimited{mark, suffix})), J.Outside{}, SNil{}, acc),
385                finish(Delimited{mark, suffix}, List.append(&2, J.Lexeme, SP.reverse_source_task(J.Obj{Nil{}}, mode), acc)),
386                finish(Delimited{mark, suffix}, push(J.Obj{Nil{}}, mode, acc)),
387                SP.lex_simple_task_suffix_before_punctuation(SP.SimpleEmptyObject{}, mode, SP.punctuation_char(mark), suffix, acc, SP.punctuation_action(mark, suffix)),
388                Equal.cong(List<&2, J.Lexeme>, List<&2, J.Lexeme>,
389                    x => finish(Delimited{mark, suffix}, x),
390                    List.append(&2, J.Lexeme, SP.reverse_source_task(J.Obj{Nil{}}, mode), acc),
391                    push(J.Obj{Nil{}}, mode, acc),
392                    Equal.sym(List<&2, J.Lexeme>,
393                        push(J.Obj{Nil{}}, mode, acc),
394                        List.append(&2, J.Lexeme, SP.reverse_source_task(J.Obj{Nil{}}, mode), acc),
395                        push_append(J.Obj{Nil{}}, mode, acc))))

Uses (23)

Used by (1)