def key_names

bend-schema-lib@0.4.1.0 · core.bend:254

import bend-schema-lib@0.4.1.0/core.bend as Core
import Base

254# ---- a strict object: its keys ----
255#
256# The names a record or variant chain declares. SStrict refuses a key that is
257# not one of them; wf asks that SStrict wrap such a chain.
258def key_names(s: Schema) -> List<&2, String>:
259  match s:
260    case SField{n, fs, rest}:
261      n <> key_names(rest)
262    case SVariant{n, vs, rest}:
263      n <> key_names(rest)
264    case _:
265      Nil{}

Uses (3)

Used by (3)