Visitor.Fold_with_context
Folder that carries a context
type 'a action = 'a folding_action
val do_children : 'a -> 'b -> 'b folding_action
val proceed : 'a -> 'b -> 'b folding_action
val default : 'a -> 'b -> 'c -> 'c folding_action
val handle :
('x -> 'c -> 'a -> 'a action) ->
continue:('x -> 'c -> 'a -> 'a) ->
'x ->
'c ->
'a ->
'a
val leaf : ('x -> 'c -> 'a -> 'a action) -> 'x -> 'c -> 'a -> 'a
class ['a, 'c] folder : object ... end
val fold_bool : ['a, 'b] folder -> 'b -> bool -> 'a -> 'a
val fold_char : ['a, 'b] folder -> 'b -> char -> 'a -> 'a
val fold_int : ['a, 'b] folder -> 'b -> int -> 'a -> 'a
val fold_string : ['a, 'b] folder -> 'b -> string -> 'a -> 'a
val fold_option :
fold:(['b, 'c option] folder as 'a -> 'c -> 'd option -> 'b -> 'b) ->
'e ->
'c option ->
'd option ->
'b ->
'b
val fold_list :
fold:(['b, 'c] folder as 'a -> 'c -> 'b -> 'd -> 'b) ->
'e ->
'c ->
'd list ->
'b ->
'b