package ocsigen-ppx-rpc

  1. Overview
  2. Docs
module Parsetree = Ppxlib.Parsetree
module Asttypes = Ppxlib.Asttypes
module Longident = Ppxlib.Longident
module Location = Ppxlib.Location
val mkloc : 'a -> Ppxlib.Ast.location -> 'b Ppxlib.Ast.loc
val mkloc_opt : ?loc:Ppxlib.Ast_helper.loc -> 'a -> 'b Ppxlib.Ast.loc
type error =
  1. | No_parameter
  2. | Missing_parameter_type
  3. | Missing_parameter_name
  4. | Reserved_parameter of string
  5. | Duplicated_parameter of string
  6. | No_return_type
val print_error : loc:Location.t -> error -> 'a
val rpc_name : string -> string
val expr_tuple : ('a * string * 'b) list -> Astlib.Ast_500.Parsetree.expression
val pat_tuple : ('a * string * 'b) list -> Astlib.Ast_500.Parsetree.pattern
val build_params : Ppxlib.Ast.location -> ((Ppxlib.Ast.arg_label * string * 'a) list * bool) -> (Ppxlib.Ast.arg_label * Astlib.Ast_500.Parsetree.expression) list
val server_function : loc:Ppxlib.Ast.location -> kind:[< `Any | `Connected | `None ] -> fun_var:Ppxlib_ast.Ast.pattern -> Ppxlib_ast.Ast.expression -> Ppxlib_ast.Ast.structure_item
val server_cacher : loc:Ppxlib.Ast.location -> kind:[< `Any | `Connected | `None ] -> cache:Ppxlib_ast.Ast.core_type option -> fun_name:string -> fun_var:Ppxlib_ast.Ast.pattern -> params:((Ppxlib.Ast.arg_label * string * 'a) list * bool) -> Ppxlib_ast.Ast.structure_item
val server_wrapper : loc:Ppxlib.Ast.location -> kind:[< `Any | `Connected | `None ] -> raw:bool -> cache:'a option -> fun_name:string -> fun_var:Ppxlib_ast.Ast.pattern -> params:((Ppxlib.Ast.arg_label * string * 'b) list * bool) -> Ppxlib_ast.Ast.structure_item
val client_wrapper : loc:Ppxlib.Ast.location -> kind:[< `Any | `Connected | `None ] -> raw:bool -> cache:'a option -> fun_name:string -> fun_var:Ppxlib_ast.Ast.pattern -> params: ((Astlib.Ast_500.Asttypes.arg_label * string * Astlib.Ast_500.Parsetree.core_type) list * bool) -> Ppxlib_ast.Ast.structure_item
val raw : bool ref
val cache : bool ref
val extension : legacy:bool -> loc:Location.t -> path:'a -> string Ppxlib.Ast.loc -> Ppxlib_ast.Ast.expression -> Astlib.Ast_500.Parsetree.structure_item
val extensions : Ppxlib.Extension.t list
val driver_args : (string * Arg.spec * string) list