def Split.apply
bend-lint-rules@0.2.0.0 · layout/format.bend:1658
import bend-lint-rules@0.2.0.0/layout/format.bend as Format
import Base
1658def Split.apply(
1659 act: Act,
1660 +n: Tree,
1661 d: Doc,
1662 rest: List<&2, Tree>,
1663 +tab: U32,
1664 base: U32,
1665 st: State
1666) -> State:
1667 match act st:
1668 case Add{} State{seq, sp}:
1669 State{Seq.visit(n, d, rest, tab, False{}, seq), Split.track(n, False{}, sp)}
1670 case AddAttach{} State{seq, sp}:
1671 State{Seq.visit(n, d, rest, tab, False{}, seq), Split.track(n, True{}, sp)}
1672 case AddEnd{} State{seq, sp}:
1673 Split.end(
1674 tab,
1675 base,
1676 State{Seq.visit(n, d, rest, tab, False{}, seq), Split.track(n, False{}, sp)}
1677 )
1678 case End{} State{seq, sp}:
1679 Split.end(tab, base, State{seq, sp})