def joint.spec
import ezx@1.11.0.0/src/ws/joint.bend as Jointimport Base
import ezx@1.11.0.0/src/pkg/pkg.bend as K
import ezx@1.11.0.0/src/ws/workspace.bend as W
854# what the root's `[workspace]` table says, against the ledgers git lists
855def joint.spec(rd: W.Read, +text: String, +fs: List<&2, Found>, +files: List<&2, K.Source>) -> Joint:
856 match rd:
857 case W.Lone{}:
858 Lone{}
859 case W.Bad{why}:
860 Clash{why}
861 case W.Root{+spec}:
862 joint.members(W.members(spec, W.root.of(text), ledgers(fs)), text, fs, files)