package pa_ppx

  1. Overview
  2. Docs
val addset : 'a list ref -> 'a -> unit
val addsetl : 'a list ref -> 'a list -> unit
type form_t =
  1. | Short
  2. | Medium
  3. | Long
type t = {
  1. all_plugins : string list ref;
  2. all_attributes : string list ref;
  3. current_plugins : string list ref;
  4. current_attributes : string list ref;
  5. allowed_form : (Ploc.t * form_t) option ref;
}
val mk : unit -> t
type Pa_ppx_base.Pa_passthru.scratchdata_t +=
  1. | Pa_deriving of t
val get : Pa_ppx_base.Pa_passthru.Ctxt.t -> t
val init : Pa_ppx_base.Pa_passthru.Ctxt.t -> unit
val legitimate_plugin_reference : 'a -> (string * (string * MLast.expr) list) -> bool
val start_decl : Ploc.t -> t -> (string * (string * MLast.expr) list) list -> (string * (string * MLast.expr) list) list
val end_decl : t -> string list
val set_form : Ploc.t -> t -> form_t -> unit
val get_form : t -> form_t
val dump : t Fmt.t
val allowed_attribute : t -> string -> string -> string option
val is_allowed_attribute : t -> string -> string -> MLast.attribute -> bool