def wanted
bend-lint-rules@0.2.0.0 · layout/case.bend:184
import bend-lint-rules@0.2.0.0/layout/case.bend as Case
import Base
import bend-lint-api@0.2.0.0/linter/lint.bend as Lint
import bend-lint-api@0.2.0.0/shared/lists.bend as Lists
184
185def wanted(+node: Lint.Node, namespace: String) -> Maybe<&2, Case>:
186 match node:
187 case Lint.Node{Lint.Import{t}, name, s, k, f}:
188 Lists.when(Case, Bool.not(String.eq(name, "Base")), Pascal{})
189 case Lint.Node{Lint.Datatype{t}, name, s, k, f}:
190 Some{Pascal{}}
191 case Lint.Node{Lint.Constructor{t}, name, s, k, f}:
192 Some{Pascal{}}
193 case Lint.Node{Lint.Law{t}, name, s, k, f}:
194 Some{Snake{}}
195 case Lint.Node{Lint.Definition{t, u}, name, s, kids, f}:
196 Lists.when(Case, String.eq(Lint.Name.namespace(t), namespace), returns(kids))
197 case Lint.Node{Lint.Parameter{b, q}, name, s, kids, f}:
198 Some{typed(kids)}
199 case Lint.Node{Lint.Field{b, q}, name, s, kids, f}:
200 Some{typed(kids)}
201 case _:
202 Some{Either{}}