X-Git-Url: https://git.hcoop.net/hcoop/domtool2.git/blobdiff_plain/6be996d467429cc09f81becd3fd4e294ae1871ae..a3698041b3521c3cb17b3546ecdc08ba101c788a:/src/env.sig diff --git a/src/env.sig b/src/env.sig index 795129a..f965ee2 100644 --- a/src/env.sig +++ b/src/env.sig @@ -20,8 +20,19 @@ signature ENV = sig - val registerType : string * (Ast.exp -> bool) -> unit - val typeRule : string -> (Ast.exp -> bool) option + type typeRule = Ast.exp -> bool + val registerType : string * typeRule -> unit + val typeRule : string -> typeRule option + + type env_vars = Ast.exp Ast.StringMap.map + type action = env_vars * Ast.exp list -> env_vars + val registerAction : string * action -> unit + val action : string -> action option + + val registerContainer : string * action * (unit -> unit) -> unit + val container : string -> (action * (unit -> unit)) option + + val badArgs : string -> 'a type env val empty : env