def Yaml.scalar

bend-kube-runtime@0.2.0.0 · src/yaml.bend:610

import bend-kube-runtime@0.2.0.0/src/yaml.bend as Yaml
import Base
import bend-kube-runtime@0.2.0.0/src/json.bend as J

610# A scalar or flow value; an alias (*name) or a tag (!!str x) first.
611def Yaml.scalar(+s: String) -> J.Json:
612  match s:
613    case SCon{'*', t}:
614      J.JStr{SCon{Chr{0}, SCon{'*', t}}}
615    case SCon{'!', t}:
616      Yaml.tagged(Yaml.split_word(t))
617    case SCon{'"', t}:
618      Yaml.json_or(J.Json.parse(s), s)
619    case SCon{'\'', t}:
620      J.JStr{Yaml.unsingle(Yaml.strip_ends(s))}
621    case SCon{'[', t}:
622      Yaml.json_or(J.Json.parse(Yaml.flow(s)), s)
623    case SCon{'{', t}:
624      Yaml.json_or(J.Json.parse(Yaml.flow(s)), s)
625    case x:
626      Yaml.plain(x)

Uses (15)

Used by (3)