package ppxlib

  1. Overview
  2. Docs
Standard infrastructure for ppx rewriters

Install

dune-project
 Dependency

Authors

Maintainers

Sources

a6fadbd212f3cd7d5d8dcfefc46c884f710fedc0.tar.gz
sha256=25e81f2085ad19688f7056c6df49ca48b3df4cea8304ba3be2550e172d59bfec
sha512=cfdaa06fd32d206f72de05a5289d33ec85fa6bdf7c5be7c85874a16d9e154cdc080465453b60fe7f6c01589eb92e4296b18067413ac2d8dec47b9539f55e301e

doc/ppxlib/Ppxlib/Expansion_context/Deriver/index.html

Module Expansion_context.DeriverSource

Sourcetype t

Type of expansion contexts for derivers

Sourceval derived_item_loc : t -> Location.t

Return the location of the item to which the deriver is being applied

Sourceval code_path : t -> Code_path.t

Return the code path for the given context In Driver, Deriving and Extension, the context is initialized so that the file_path component of the code_path is determined from the first location found in the input AST. That means that:

  • It's the empty string in empty structures or signatures
  • It can be altered by line directives
Sourceval input_name : t -> string

Return the input name for the given context. In Driver, Deriving and Extension, the context argument is initialized so that the input_name matches the input filename passed to the driver on the command line. That means that:

  • It has a value even for empty files
  • It is not affected by line directives
  • It is "_none_" when using Driver.map_structure or Driver.map_signature
Sourceval tool_name : t -> string

Can be used within a ppx preprocessor to know which tool is calling it "ocamlc", "ocamlopt", "ocamldep", "ocaml", ... .

Sourceval with_loc_and_path : (loc:Location.t -> path:string -> 'a) -> ctxt:t -> 'a

Wrap a fun ~loc ~path into a fun ~ctxt

Sourceval inline : t -> bool

Whether the derived code is going to be inlined in the source