def walk

ezmcp@0.1.0.0 · src/openapi.bend:252

import ezmcp@0.1.0.0/src/openapi.bend as Openapi
import Base
import emerging-ezjson@1.2.0.0/main.bend as Json
import emerging-ezjson@1.2.0.0/src/value.bend as Value

252# the value at a pointer's tokens, each a member name, or none when a member
253# is missing
254def walk(toks: List<&2, String>, +val: Value.Json) -> Maybe<&2, Value.Json>:
255  match toks:
256    case []:
257      Some{val}
258    case tok <> rest:
259      +key = token(tok)
260      walk.at(Json.has(val, key), Json.get(val, key), got => walk(rest, got))

Uses (8)

Used by (1)