package p4spectec

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module Walk.Collect

module Mixfix = Domain.Mixfix
type 'a collector = {
  1. default : 'a;
  2. compose : 'a -> 'a -> 'a;
  3. collect_typ : 'a collector -> Il.typ -> 'a;
  4. collect_exp : 'a collector -> Il.exp -> 'a;
  5. collect_iterexp : 'a collector -> Il.iterexp -> 'a;
  6. collect_path : 'a collector -> Il.path -> 'a;
  7. collect_arg : 'a collector -> Il.arg -> 'a;
  8. collect_prem : 'a collector -> Il.prem -> 'a;
  9. collect_iterprem : 'a collector -> Il.iterprem -> 'a;
}
val collect_typ : 'a collector -> Il.typ -> 'a
val collect_exp : 'a collector -> Il.exp -> 'a
val collect_iterexp : 'a collector -> Il.iterexp -> 'a
val collect_path : 'a collector -> Il.path -> 'a
val collect_arg : 'a collector -> Il.arg -> 'a
val collect_prem : 'a collector -> Il.prem -> 'a
val collect_iterprem : 'a collector -> Il.iterprem -> 'a
val collect_typs : 'a collector -> Il.typ list -> 'a
val collect_exps : 'a collector -> Il.exp list -> 'a
val collect_args : 'a collector -> Il.arg list -> 'a
val collect_prems : 'a collector -> Il.prem list -> 'a
val default_collect_typ : 'a collector -> Il.typ -> 'a
val default_collect_exp : 'a collector -> Il.exp -> 'a
val default_collect_iterexp : 'a collector -> Il.iterexp -> 'a
val default_collect_path : 'a collector -> Il.path -> 'a
val default_collect_arg : 'a collector -> Il.arg -> 'a
val default_collect_prem : 'a collector -> Il.prem -> 'a
val default_collect_iterprem : 'a collector -> Il.iterprem -> 'a
val make_base : default:'a -> compose:('a -> 'a -> 'a) -> 'a collector