Module Ppx_common

val str_of_expr : Ppxlib_ast__.Import.Parsetree.expression -> string
val str_of_pat : Ppxlib_ast__.Import.Parsetree.pattern -> string
val str_of_structure : Ppxlib_ast__.Import.Parsetree.structure -> string
val llid : loc:Ppxlib.location -> string -> Ppxlib.Longident.t Ppxlib.loc
val esome : Ppxlib.expression -> Ppxlib__.Import.expression
val enone : loc:Ppxlib__.Import.location -> Ppxlib__.Import.expression
type options = {
path : Ppxlib.expression;
input : Ppxlib.expression;
output : Ppxlib.expression;
errors : Ppxlib.expression;
params : Ppxlib.expression;
section : Ppxlib.expression;
name : Ppxlib.expression;
descr : Ppxlib.expression;
security : Ppxlib.expression;
register : Ppxlib.expression;
input_example : Ppxlib.expression;
output_example : Ppxlib.expression;
error_type : Ppxlib.core_type;
security_type : Ppxlib.core_type;
debug : bool;
directory : string option;
service : Ppxlib.expression option;
}
val empty : loc:Ppxlib__.Import.location -> Ppxlib__.Import.expression
val raw : Ppxlib.expression -> Ppxlib__.Import.expression
val json : Ppxlib.expression -> Ppxlib__.Import.expression
val options : ?⁠register:Ppxlib__.Import.expression -> Ppxlib__.Import.location -> options
val methods : string list
val parse_arg : loc:Ppxlib__.Location.t -> string -> Ppxlib__.Import.expression
val parse_path : loc:Ppxlib__.Location.t -> string -> Ppxlib__.Import.expression
val get_options : loc:Ppxlib__.Import.location -> ?⁠name:string -> ?⁠client:bool -> Ppxlib.attribute -> string option * options
val service_value : ?⁠name:string -> ?⁠client:bool -> Ppxlib.attribute -> Ppxlib__.Import.structure_item * string * options
val first : bool Stdlib.ref
val ppx_dir : loc:Ppxlib__.Import.location -> 'a option -> Ppxlib__.Import.structure_item list
val register : string -> Ppxlib.attribute -> Ppxlib__.Import.structure_item list
val register_ws : onclose:Ppxlib.value_binding list -> string -> string -> Ppxlib.attribute -> Ppxlib__.Import.structure_item list
val process : string -> Ppxlib.attribute -> Ppxlib__.Import.structure_item list
val process_ws : onclose:Ppxlib.value_binding list -> string -> string -> Ppxlib.attribute -> Ppxlib__.Import.structure_item list
val handler_args : Ppxlib.expression -> Ppxlib.expression
type server_options = {
port : Ppxlib.expression;
dir : Ppxlib.expression;
catch : Ppxlib.expression;
}
val server_options : Ppxlib.attribute -> server_options
val server : Ppxlib.attribute -> Ppxlib__.Import.expression
val impl : ?⁠kind:[> `client | `server ] -> Ppxlib.structure_item list -> Ppxlib__.Import.structure_item list