My agentic slop goes here. Not intended for anyone else!
at jsont 2.3 kB view raw
1(** JSON utility functions for working with Ezjsonm. 2 3 This module provides convenience combinators that combine common 4 Ezjsonm operations. Most functions are thin wrappers that combine 5 find/get operations or provide Option-based error handling. *) 6 7(** {2 Finding values by path} 8 9 These combine [Ezjsonm.find] with type extraction functions. *) 10 11val find_string : Ezjsonm.value -> string list -> string 12val find_int : Ezjsonm.value -> string list -> int 13val find_bool : Ezjsonm.value -> string list -> bool 14val find_float : Ezjsonm.value -> string list -> float 15 16val find_string_opt : Ezjsonm.value -> string list -> string option 17val find_int_opt : Ezjsonm.value -> string list -> int option 18val find_bool_opt : Ezjsonm.value -> string list -> bool option 19val find_float_opt : Ezjsonm.value -> string list -> float option 20 21(** {2 Association list operations} *) 22 23val assoc_string : string -> (string * Ezjsonm.value) list -> string 24val assoc_int : string -> (string * Ezjsonm.value) list -> int 25val assoc_bool : string -> (string * Ezjsonm.value) list -> bool 26val assoc_float : string -> (string * Ezjsonm.value) list -> float 27 28val assoc_string_opt : string -> (string * Ezjsonm.value) list -> string option 29val assoc_int_opt : string -> (string * Ezjsonm.value) list -> int option 30val assoc_bool_opt : string -> (string * Ezjsonm.value) list -> bool option 31val assoc_float_opt : string -> (string * Ezjsonm.value) list -> float option 32 33(** {2 Object field operations} 34 35 Direct field access without needing to build paths. *) 36 37(** Alias for [Ezjsonm.get_dict] *) 38val get_fields : Ezjsonm.value -> (string * Ezjsonm.value) list 39 40val get_field : Ezjsonm.value -> string -> Ezjsonm.value 41val get_field_opt : Ezjsonm.value -> string -> Ezjsonm.value option 42 43val get_field_string : Ezjsonm.value -> string -> string 44val get_field_int : Ezjsonm.value -> string -> int 45val get_field_bool : Ezjsonm.value -> string -> bool 46val get_field_float : Ezjsonm.value -> string -> float 47 48val get_field_string_opt : Ezjsonm.value -> string -> string option 49val get_field_int_opt : Ezjsonm.value -> string -> int option 50val get_field_bool_opt : Ezjsonm.value -> string -> bool option 51val get_field_float_opt : Ezjsonm.value -> string -> float option