package ppx_deriving_encoding

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
val verbose : int
val fake : bool
val debug : ?v:int -> ?force:bool -> ('a, unit, string, unit) Stdlib.format4 -> 'b
val json_encoding_dot : string Stdlib.ref
val json_encoding_tmp : string Stdlib.ref
val wrap : string option -> unit
val unwrap : unit -> unit
val raise_error : loc:Ppxlib.Location.t -> ('a, Stdlib.Format.formatter, unit, 'b) Stdlib.format4 -> 'c
val enc_names : (string, string) Stdlib.Hashtbl.t
val enc_name : ?search:bool -> string -> string
val add_enc_name : string -> string -> unit
val enc_mod : string -> string
val llid : loc:Ppxlib.location -> string -> Ppxlib.Longident.t Ppxlib.loc
val add_params_fun : Ppxlib.expression -> Ppxlib.core_type list -> Ppxlib.expression
val param_names : (Ppxlib.core_type * 'a) list -> string list
val string_literal : Ppxlib.constant -> string option
val get_expr_attr : Ppxlib.payload -> Ppxlib.expression option
val get_string_attr : Ppxlib.payload -> string option
val rm_prefix_of_expr : Ppxlib.expression -> [> `bool of bool | `length of int | `prefix of string ] option
val get_rm_prefix_attr : Ppxlib.payload -> [> `bool of bool | `length of int | `prefix of string ] option
val camel_to_snake : string -> string
val snake_to_camel : string -> string
type field_attributes = {
  1. fa_field : string * bool * Ppxlib.expression option;
  2. fa_key : string;
  3. fa_title : Ppxlib.expression option;
  4. fa_description : Ppxlib.expression option;
  5. fa_assoc : bool option;
  6. fa_enum : bool option;
  7. fa_exclude : Ppxlib.expression option;
  8. fa_obj : bool option;
  9. fa_enc : Ppxlib.expression option;
  10. fa_obj1 : string option;
  11. fa_merge : bool;
  12. fa_construct_default : bool;
  13. fa_set : Ppxlib.expression option;
  14. fa_map : Ppxlib.expression option option;
}
val field_attrs : key:string -> ?opt:bool -> ?option:string -> ?camel:bool -> ?snake:bool -> ?set:Ppxlib.expression -> ?map:Ppxlib.expression option -> Ppxlib.attribute list -> field_attributes
type cs_attributes = {
  1. cs_kind : string option;
  2. cs_kind_label : string option;
  3. cs_assoc : bool option;
  4. cs_enum : bool option;
  5. cs_key : string option;
  6. cs_obj : bool option;
  7. cs_enc : Ppxlib.expression option;
  8. cs_title : Ppxlib.expression option;
  9. cs_description : Ppxlib.expression option;
  10. cs_ignore : bool;
  11. cs_rm_prefix : [ `bool of bool | `prefix of string | `length of int ];
  12. cs_obj1 : string option;
  13. cs_empty : bool option;
}
val constructor_attrs : Ppxlib.attribute list -> cs_attributes
type core_attributes = {
  1. co_assoc : bool option;
  2. co_enum : bool option;
  3. co_exclude : Ppxlib.expression option;
  4. co_obj : bool option;
  5. co_enc : Ppxlib.expression option;
  6. co_obj1 : string option;
  7. co_merge : bool;
  8. co_rm_prefix : [ `bool of bool | `prefix of string | `length of int ] option;
  9. co_set : Ppxlib.expression option;
  10. co_map : Ppxlib.expression option option;
}
val core_attrs : ?assoc:bool -> ?enum:bool -> ?obj:bool -> ?enc:Ppxlib.expression -> ?obj1:string -> ?set:Ppxlib.expression -> ?map:Ppxlib.expression option -> Ppxlib.attribute list -> core_attributes
val new_var : unit -> string
val str_of_structure : Astlib.Ast_414.Parsetree.structure -> string
val str_of_signature : Astlib.Ast_414.Parsetree.signature -> string
val str_of_core : Astlib.Ast_414.Parsetree.core_type -> string
val encaps_tuple : loc:'a -> (loc:'b -> 'c -> 'd) -> (loc:'e -> 'f list -> 'g) -> 'h list -> 'i
val encaps_merge : loc:Ppxlib.Location.t -> ?f:string -> (Astlib.Ast_500.Parsetree.expression * bool) list -> Astlib.Ast_500.Parsetree.expression
val remove_prefix : string -> int -> string
val same_prefix : string list -> int
module type S = sig ... end