ppxx

Ppxx: a small extension library for writing PPX preprocessors
IN THIS PACKAGE
Module Ppxx . Helper

Extensions of Ast_helper

Make the location ghost

val at : ?loc:Ast_405.Location.t -> 'a -> 'a Ast_405.Location.loc

Attach the location. If the location is not given, Ast_helper.default_loc is used.

val (!@) : 'a -> 'a Ast_405.Location.loc

!@ x is equivalent with at x

Build a Longident.t with a location. If the location is not given, Ast_helper.default_loc is used.

val with_loc : Ast_405.Location.t -> ( unit -> 'a ) -> 'a

Execute a function with setting Ast_helper.default_loc

val with_gloc : Ast_405.Location.t -> ( unit -> 'a ) -> 'a

Execute a function with setting Ast_helper.default_loc, but with ghosting

module Name : sig ... end

Extension of AST creator modules

For all the ?loc:Location.t labels, Ast_helper.default_loc is used when omitted.

module Typ : sig ... end

Type expressions

module Exp : sig ... end

Expressions

module Pat : sig ... end

Patterns

module ExpPat : sig ... end
module Cf : sig ... end

Class fields

module Cstr : sig ... end

Class structures

module Mod : sig ... end

Module expressions

module Val : sig ... end

Value declarations

module Type : sig ... end

Type declarations

module Te : sig ... end

Type extensions

Module language

module Mty : sig ... end

Module type expressions

module Sig : sig ... end

Signature items

module Str : sig ... end

Structure items

module Md : sig ... end

Module declarations

module Mtd : sig ... end

Module type declarations

module Mb : sig ... end

Module bindings

module Opn : sig ... end
module Incl : sig ... end

Value bindings

module Vb : sig ... end

Class language

module Cty : sig ... end

Class type expressions

module Ctf : sig ... end

Class type fields

module Cl : sig ... end

Class expressions

module Ci : sig ... end

Classes

module Csig : sig ... end

Class signatures

module Attr : sig ... end

Attributes

val ocaml_warning : ?loc:Ast_405.Ast_helper.loc -> string -> Ast_405.Parsetree.attribute

Create an attribute like @@ocaml.warning <string>