module Mapper: sig
.. end
A generic Syntax mapper inspired by OCaml's Ast_mapper
type
mapper = {
}
A mapper record implements one "method" per syntactic category,
using an open recursion style: each method takes as its first
argument the mapper to be applied to children in the syntax
tree.
val (&&&) : ('a -> 'b -> 'c -> 'd) -> ('e -> 'a) -> 'e -> 'b -> 'c -> 'd
combine two generic mappers
val map_list : ('a -> 'b -> 'c) -> 'a -> 'b list -> 'c list
Lift a sub-map function to a map function over lists
val map_option : ('a -> 'b -> 'c) -> 'a -> 'b option -> 'c option
: (mapper -> 'a -> 'b) ->
mapper -> 'a Syntax.commented -> 'b Syntax.commented
val map_located : (mapper -> 'a -> 'b) ->
mapper -> 'a Location.loc -> 'b Location.loc
val map_else_conditional : (mapper -> 'a -> 'b) ->
mapper -> 'a Syntax.else_condition -> 'b Syntax.else_condition
val map_conditional : (mapper -> 'a -> 'b) ->
mapper -> 'a Syntax.condition_struct -> 'b Syntax.condition_struct
val map_for_loop : (mapper -> 'a -> 'b) ->
mapper -> 'a Syntax.for_loop_struct -> 'b Syntax.for_loop_struct
val id : 'a -> 'b -> 'b
The identity map function. Does no traversal
module TD: sig
.. end
Map for type-definitions
module Unit: sig
.. end
module DerSpec: sig
.. end
module Name: sig
.. end
module Import_Desc: sig
.. end
module Import: sig
.. end
module Comment: sig
.. end
module TRD: sig
.. end
module CRD: sig
.. end
module CMOD: sig
.. end
module CMOD_Struct: sig
.. end
module CMOD_Value: sig
.. end
module Modification: sig
.. end
module Equation_Desc: sig
.. end
module Equation: sig
.. end
module Idx: sig
.. end
module Algorithm: sig
.. end
module Statement: sig
.. end
module Statement_Desc: sig
.. end
module Named_Arg: sig
.. end
module Exp: sig
.. end
val default_mapper : mapper