Pa_deriving_yojson.Ctxt
type t = Pa_ppx_base.Pa_passthru.Ctxt.t = {
filename : string;
_module_path : string list;
options : (string * MLast.expr) list;
ef : Pa_ppx_base.Pa_passthru.EF.t;
scratch : (string * Pa_ppx_base.Pa_passthru.scratchdata_t) list;
refscratch : (string * Pa_ppx_base.Pa_passthru.scratchdata_t) list ref;
}
val mk : Pa_ppx_base.Pa_passthru.EF.t -> Ploc.t -> t
val module_path : t -> string list
val module_path_s : t -> string
val filename : t -> string
val add_options : t -> (string * MLast.expr) list -> t
val option : t -> string -> MLast.expr
val options : t -> (string * MLast.expr) list
val scratchdata : t -> string -> Pa_ppx_base.Pa_passthru.scratchdata_t
val init_scratchdata :
t ->
string ->
Pa_ppx_base.Pa_passthru.scratchdata_t ->
t
val update_scratchdata :
t ->
string ->
Pa_ppx_base.Pa_passthru.scratchdata_t ->
t
val refscratchdata : t -> string -> Pa_ppx_base.Pa_passthru.scratchdata_t
val init_refscratchdata :
t ->
string ->
Pa_ppx_base.Pa_passthru.scratchdata_t ->
unit
val plugin_name : t -> string
val is_plugin_name : t -> string -> bool
val is_strict : t -> bool
val is_exn : t -> bool