package ppx_deriving_jsoo

  1. Overview
  2. Docs
module SMap : sig ... end
type ('a, 'b) conv0 = {
  1. e_to : 'a;
  2. e_of : 'b;
  3. e_acc : (conv * (string * string)) list;
}
type ('a, 'b) ctt =
  1. | CT of 'a
  2. | TT of 'b
val verbose : int
val fake : bool
val debug : ?v:int -> ?force:bool -> ('a, unit, string, unit) Stdlib.format4 -> 'b
val jsoo : string
val _jsoo : string
val to_jsoo : string
val of_jsoo : string
val jsoo_conv : string
val _jsoo_conv : string
val _to_jsoo : string
val _of_jsoo : string
val tuple_jsoo : string
val jsoo_mod : string -> string
val js_mod : string -> string
val mkl : loc:Astlib.Location.t -> 'a -> 'b Ppxlib.Asttypes.loc
val mknol : 'a -> 'b Ppxlib.Asttypes.loc
val lid : string -> Ppxlib.Longident.t
val jsoo_name : ?suff:string -> ?modules:(string * string) list -> string -> string
val jsoo_name_to : ?modules:(string * string) list -> string -> string
val jsoo_name_of : ?modules:(string * string) list -> string -> string
val jsoo_name_conv : ?modules:(string * string) list -> string -> string
val new_var : unit -> string
val get_string_attr : Ppxlib.payload -> string option
val get_int_attr : Ppxlib.payload -> int option
val get_ident_attr : Ppxlib.payload -> Ppxlib.longident_loc option
val get_enum_attr : Ppxlib.payload -> [> `int | `string ] option
val camel_to_snake : string -> string
val snake_to_camel : string -> string
type field_attributes = {
  1. fa_meth : bool;
  2. fa_meth_cb : bool option;
  3. fa_cb : bool option;
  4. fa_prop : string option;
  5. fa_opt : string option;
  6. fa_key : string;
  7. fa_ignore : bool;
  8. fa_array : bool option;
  9. fa_assoc : bool option;
  10. fa_number : bool option;
  11. fa_case : bool;
  12. fa_inherit : bool;
  13. fa_enum : [ `string | `int ] option;
  14. fa_code : int option;
}
val field_attributes : key:string -> ?prop:string -> ?camel:bool -> ?snake:bool -> Ppxlib.attribute list -> field_attributes
type core_attributes = {
  1. ca_opt : string option;
  2. ca_ignore : bool;
  3. ca_cb : bool option;
  4. ca_meth_cb : bool option;
  5. ca_array : bool option;
  6. ca_assoc : bool option;
  7. ca_number : bool option;
  8. ca_case : bool;
  9. ca_type : (Ppxlib.longident_loc, Ppxlib.longident_loc) ctt option;
  10. ca_conv : conv option;
  11. ca_enum : [ `string | `int ] option;
}
val core_attributes : ?opt:string -> ?number:bool -> ?array_tup:bool -> ?callback:bool -> ?meth_callback:bool -> ?assoc:bool -> ?typ:(Ppxlib.longident_loc, Ppxlib.longident_loc) ctt -> ?conv:conv -> ?enum:[ `int | `string ] -> Ppxlib.attribute list -> core_attributes
val field_name : ?case:bool -> string -> string
val prop_kind : string option -> [> `Case | `Readonly | `Readwrite | `Writeonly ]
val get_new_name : ?suffix:string -> string -> string
val get_tuple_name : string -> string
val get_variant_name : string -> string
val get_object_name : string -> string
val str_of_expr : Astlib.Ast_414.Parsetree.expression -> string
val str_of_structure : Astlib.Ast_414.Parsetree.structure -> string
val str_of_pat : Astlib.Ast_414.Parsetree.pattern -> string
val str_of_ct : Astlib.Ast_414.Parsetree.class_type -> string
val remove_prefix : string -> int -> string
val same_prefix : string list -> int
val has_ezjs_min : unit -> bool