diff options
Diffstat (limited to 'lib/syntax/tree.mli')
-rw-r--r-- | lib/syntax/tree.mli | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/lib/syntax/tree.mli b/lib/syntax/tree.mli index 8ce577e..9ed442b 100644 --- a/lib/syntax/tree.mli +++ b/lib/syntax/tree.mli @@ -43,9 +43,18 @@ module Ast : sig [@@deriving eq, show] end +(** Extend the default Expression module with an eq operator *) +module Expression : sig + include S.Expression with type t' = S.pos Ast.expression + + val eq : (S.pos -> S.pos -> bool) -> t' -> t' -> bool + val hash : (S.pos -> int) -> t' -> int + val exists : f:(t' -> bool) -> t' -> bool +end + include S.Analyzer - with type Expression.t' = S.pos Ast.expression + with module Expression := Expression and type Instruction.t' = S.pos Ast.statement and type Location.t = S.pos * S.pos Ast.statement list and type context = unit |