def Draft.target
bend-lint-rules@0.2.0.0 · lib/linter/directives.bend:350
import bend-lint-rules@0.2.0.0/lib/linter/directives.bend as Directives
import Base
import bend-lint-api@0.2.0.0/shared/lists.bend as Lists
350
351def Draft.target(parts: List<&2, String>) -> Maybe<&2, Target>:
352 match parts:
353 case Con{+rule, Nil{}}:
354 Lists.when(Target, Draft.is_rule_id(String.split(rule, '/')), Target{rule, None{}})
355 case Con{+rule, Con{p, rest}}:
356 Lists.when(
357 Target,
358 Draft.is_rule_id(String.split(rule, '/')),
359 Target{rule, Some{String.join(p <> rest, "@")}}
360 )
361 case Nil{}:
362 None{}