Module Bindoj_runtime.Json_shape

type shape_explanation = [
  1. | `self
  2. | `named of string * shape_explanation
  3. | `special of string * shape_explanation
  4. | `with_warning of string * shape_explanation
  5. | `exactly of Kxclib.Json.jv
  6. | `any_json_value
  7. | `unresolved of string
  8. | `anyone_of of shape_explanation list
  9. | `string_enum of string list
  10. | `nullable of shape_explanation
  11. | `boolean
  12. | `numeric
  13. | `integral
  14. | `proper_int53p
  15. | `proper_float
  16. | `string
  17. | `base64str
  18. | `array_of of shape_explanation
  19. | `tuple_of of shape_explanation list
  20. | `record_of of shape_explanation
  21. | `object_of of field_shape_explanation list
]

Represents a json shape.

Represents a json field shape.

and field_shape_explanation = [
  1. | `mandatory_field of string * shape_explanation
  2. | `optional_field of string * shape_explanation
]

Represents a json field shape.

val show_shape_explanation : shape_explanation -> string
val show_field_shape_explanation : field_shape_explanation -> string
val pp_shape_explanation : Stdlib.Format.formatter -> shape_explanation -> unit

Pretty printer for the shape_explanation

val pp_field_shape_explanation : Stdlib.Format.formatter -> field_shape_explanation -> unit

Pretty printer for the field_shape_explanation

val string_of_shape_explanation : shape_explanation -> string
val string_of_field_shape_explanation : field_shape_explanation -> string