def routes.prepare
bend-kit-camber@0.15.0.1 · camber.bend:549
import bend-kit-camber@0.15.0.1/camber.bend as Camber
import Base
import bend-kit-router@0.2.0.0/router.bend as Router
549def routes.prepare(~A: Data, ~P: Data, routes: List<&2, Route<A, P>>, +groups: List<&2, Group<P>>, +root: P) -> Result<&2, &2, RegistrationError, List<&2, Router.Entry<Endpoint<A, P>>>>:
550 match routes:
551 case Nil{}:
552 Done{Nil{}}
553 case Route{method, pattern, action, +ids, policy} <> rest:
554 do Result<&2, &2, RegistrationError, List<&2, Router.Entry<Endpoint<A, P>>>>:
555 policies : List<&2, P> <- routes.policies(~P, groups.policies(~P, ids, groups, Nil{}), ids)
556 entries : List<&2, Router.Entry<Endpoint<A, P>>> <- routes.prepare(~A, ~P, rest, groups, root)
557 return Router.Entry{method, pattern, Endpoint{action, root <> List.append(&2, P, policies, [policy])}, ids} <> entries