Deriving.Generator
val make :
?attributes:Attribute.packed list ->
?deps:t list ->
?unused_code_warnings:bool ->
('f, 'output_ast) Args.t ->
(loc:Location.t -> path:string -> 'input_ast -> 'f) ->
('output_ast, 'input_ast) t
make args gen
creates a generator that can be passed to Deriving.add
to generate an output AST from an input AST and generator arguments.
deps
is a list of derivers that this generator depends on.
attributes
is deprecated and unused. It is only kept for backward compatibility.
unused_code_warning
controls whether unused code warnings (e.g. warnings 32 and 60) are enabled or suppressed in emitted code. Default is false
, which suppresses the warnings.
val make_noarg :
?attributes:Attribute.packed list ->
?deps:t list ->
?unused_code_warnings:bool ->
(loc:Location.t -> path:string -> 'input_ast -> 'output_ast) ->
('output_ast, 'input_ast) t
Same as make
, but without arguments.
module V2 : sig ... end
val apply :
('output_ast, 'input_ast) t ->
name:string ->
ctxt:Expansion_context.Deriver.t ->
'input_ast ->
(string * Astlib.Ast_500.Parsetree.expression) list ->
'output_ast