def read.string

bendonnect-rpc@0.1.0.0 · src/pbjson.bend:544

import bendonnect-rpc@0.1.0.0/src/pbjson.bend as Pbjson
import Base
import bend-kit-encoding@0.4.0.0/encoding.bend as Enc
import bend-kit-json@0.6.1.1/json.bend as Json

544def read.string(v: Json.Val) -> Result<&2, &1, String, String>:
545  match v:
546    case Json.Null{}:
547      Done{""}
548    case Json.Str{b}:
549      Done{Enc.utf8.decode(b)}
550    case Json.Flag{on}:
551      Fail{"expected a string"}
552    case Json.Num{s}:
553      Fail{"expected a string"}
554    case Json.Arr{xs}:
555      Fail{"expected a string"}
556    case Json.Obj{kvs}:
557      Fail{"expected a string"}

Uses (4)

Used by (1)