def dirty.step
import ezx@1.11.0.0/src/pub/plan.bend as Planimport Base
109# one line of `git status --porcelain` weighed, with the rest of the walk
110# behind a thunk so a status that names a hundred files stops at the first.
111# Every line git prints there names a path whose state on disk is not the
112# state the commit holds, so every one of them counts, whatever its two-letter
113# code says, `??` for an untracked file included.
114def dirty.step(blank: Bool, rest: Unit -> Bool) -> Bool:
115 match blank:
116 case True{}:
117 rest(Unit{})
118 case False{}:
119 True{}