package orsetto
Install
    
    dune-project
 Dependency
Authors
Maintainers
Sources
sha256=81283687ce3204263bc955a332dd7b90bf5b648a990c01160f33aaa77d80962f
    
    
  md5=7346293aa013c2a8974c6fb7c521166a
    
    
  doc/orsetto.json/Json_emit/Opaque/index.html
Module Json_emit.Opaque
A submodule containing logic for emitting JSON texts from values of type Cf_type.opaque according to optional mode selectors.
val mode : unit -> modeUse mode () to create a mode selector record for the opaque value emitter. Use any of the various optional parameters to set a mode selector to other than its default value.
No selector modes are defined at present.
val value : ?mode:mode -> unit -> Cf_type.opaque tUse value () to create an opaque value emitter. The following table describes the runtime type indications required for values emitted.
- null: Cf_type.Unit
- boolean: Cf_type.Bool
- number: Cf_type.IntorCf_type.Float
- string: Cf_type.StringorUcs_type.Text
- array: Cf_type.(Seq Opaque)
- object: Cf_type.(Seq (Pair (Opaque, Opaque))
Use the ~mode parameter to select modes other than the default. Raises Invalid_argument if the witnessed type is not valid for output as a JSON value.
Note well: the first opaque value of each pair element in an object value must be witness either by Ucs_type.Text or Cf_type.String.
val to_text : ?mode:mode -> Cf_type.opaque -> Ucs_text.tUse to_text v to format v as a Unicode text. Use ~mode to select the encoding modes. Raises Invalid_argument if v was not witnessed with a type compatible with JSON encoding.