def pattern.segment

bend-kit-router@0.2.0.0 · router.bend:74

import bend-kit-router@0.2.0.0/router.bend as Router
import Base

74def pattern.segment(s: String, names: List<&2, String>) -> Maybe<&2, Segment>:
75  match s:
76    case SCon{Chr{58}, +t}:
77      Bool.pick(Maybe<&2, Segment>, Bool.and(name.valid(t), Bool.not(member(names, t))), Some{Parameter{t}}, None{})
78    case SNil{}:
79      Some{Literal{""}}
80    case SCon{+h, +t}:
81      +lit = {SCon{h, t} : String}
82      Bool.pick(Maybe<&2, Segment>, literal.valid(lit), Some{Literal{lit}}, None{})

Uses (15)

Used by (1)