Module Pa_deriving_yojson.Ctxt

type t = Pa_ppx_base.Pa_passthru.Ctxt.t = {
  1. filename : string;
  2. _module_path : string list;
  3. options : (string * MLast.expr) list;
  4. ef : Pa_ppx_base.Pa_passthru.EF.t;
  5. scratch : (string * Pa_ppx_base.Pa_passthru.scratchdata_t) list;
  6. refscratch : (string * Pa_ppx_base.Pa_passthru.scratchdata_t) list ref;
}
val append_module : t -> string -> t
val module_path : t -> string list
val module_path_s : t -> string
val set_module_path : t -> string list -> t
val filename : t -> string
val set_filename : t -> string -> t
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