def why
ezx@1.11.0.0 · src/ws/workspace.bend:374
import ezx@1.11.0.0/src/ws/workspace.bend as Workspace
import Base
374
375def why(+spec: Spec, +root: Root, +ls: List<&2, Ledger>) -> String:
376 Spec{es, _ex} = spec
377 +bad = entries.bad(es)
378 +gone = absent(es, dirs.of(ls))
379 +deep = nested(picks(spec, ls))
380 +dup = twice(names(root, picks(spec, ls)))
381 Bool.pick(String, String.is_empty(bad),
382 Bool.pick(String, String.is_empty(gone),
383 Bool.pick(String, String.is_empty(deep),
384 "ez: two workspace members are both named " ++ dup,
385 "ez: workspace member " ++ deep ++ " has a [workspace] table of its own"),
386 "ez: workspace member " ++ gone ++ " has no committed ez.toml"),
387 "ez: workspace member " ++ bad ++ " is not a directory under the root")