def render_array
qasim-bend-kit@0.1.0.2 · proof/JSON_RenderLexProof.bend:397
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
397def render_array(+head: J.Value,
398 +tail: List<&2, J.Value>,
399 +mode: SP.RenderMode,
400 +boundary: Boundary,
401 +acc: List<&2, J.Lexeme>) -> {SP.render_task(J.Arr{head <> tail}, mode, boundary_text(boundary)) == prefix_text(ArrayKind{}, mode, SP.render_task(head, SP.RenderWhole{}, boundary_text(array_continuation(tail, boundary)))) : String}:
402 match mode:
403 case SP.RenderWhole{}:
404 Equal.cong(String, String,
405 x => prefix_text(ArrayKind{}, SP.RenderWhole{}, SP.render_task(head, SP.RenderWhole{}, x)),
406 SP.render_task(J.Arr{tail}, SP.RenderMembers{}, boundary_text(boundary)),
407 boundary_text(array_continuation(tail, boundary)),
408 array_continuation_text(tail, boundary))
409 case SP.RenderMembers{}:
410 Equal.cong(String, String,
411 x => prefix_text(ArrayKind{}, SP.RenderMembers{}, SP.render_task(head, SP.RenderWhole{}, x)),
412 SP.render_task(J.Arr{tail}, SP.RenderMembers{}, boundary_text(boundary)),
413 boundary_text(array_continuation(tail, boundary)),
414 array_continuation_text(tail, boundary))
415 case SP.RenderAfterSeparator{}:
416 Equal.cong(String, String,
417 x => prefix_text(ArrayKind{}, SP.RenderAfterSeparator{}, SP.render_task(head, SP.RenderWhole{}, x)),
418 SP.render_task(J.Arr{tail}, SP.RenderMembers{}, boundary_text(boundary)),
419 boundary_text(array_continuation(tail, boundary)),
420 array_continuation_text(tail, boundary))