def build
bend-lint-rules@0.2.0.0 · layout/format.bend:1803
import bend-lint-rules@0.2.0.0/layout/format.bend as Format
import Base
1803
1804
1805def build(nodes: List<&2, Tree>, +tab: U32, +base: U32, +mode: Mode, st: State) -> Doc:
1806 match nodes:
1807 case Nil{}:
1808 finish(mode, st, tab, base)
1809 case Con{Leaf{+t}, +rest}:
1810 build(rest, tab, base, mode, visit(mode, Leaf{t}, leaf_doc(t), rest, tab, base, st))
1811 case Con{Group{+open, +close, +children, +block}, +rest}:
1812 build(
1813 rest,
1814 tab,
1815 base,
1816 mode,
1817 visit(
1818 mode,
1819 Group{open, close, children, block},
1820 build(children, tab, base, mode_of(open, close, children, block), start(base)),
1821 rest,
1822 tab,
1823 base,
1824 st
1825 )
1826 )