def subs.dups
shake@0.7.0.0 · src/check.bend:98
import shake@0.7.0.0/src/check.bend as Check
import Base
import shake@0.7.0.0/src/cli.bend as C
98
99def subs.dups(
100 subs: List<&2, C.Sub>,
101 +path: List<&2, String>,
102 +names: List<&2, String>
103) -> List<&2, SpecErr>:
104 match subs:
105 case Nil{}:
106 []
107 case Con{hh, tt}:
108 C.Sub{+name, _a, _g, _c} = hh
109 both(one(List.contains(~String, ~String.eq, names, name), SameSub{path, name}),
110 both(one(String.eq(name, "help"), HelpSub{path}),
111 subs.dups(tt, path, name <> names)))