diff options
author | Alex Auvolat <alex.auvolat@ansys.com> | 2014-06-19 10:21:35 +0200 |
---|---|---|
committer | Alex Auvolat <alex.auvolat@ansys.com> | 2014-06-19 10:21:35 +0200 |
commit | a2da1268c4a9af6755723698b7b6ba669aa7fd46 (patch) | |
tree | 7deda3f5c6c33cc9935bc28bd4b879cf756ff59f /frontend/ast_printer.ml | |
parent | ced4b9677189ea837e267678e9774584b81b087f (diff) | |
download | scade-analyzer-a2da1268c4a9af6755723698b7b6ba669aa7fd46.tar.gz scade-analyzer-a2da1268c4a9af6755723698b7b6ba669aa7fd46.zip |
Do some typing ; support multiple pre in abstract interpretation.
Diffstat (limited to 'frontend/ast_printer.ml')
-rw-r--r-- | frontend/ast_printer.ml | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/frontend/ast_printer.ml b/frontend/ast_printer.ml index 3ac881e..7ddcb67 100644 --- a/frontend/ast_printer.ml +++ b/frontend/ast_printer.ml @@ -1,5 +1,6 @@ open Ast open Lexing +open Typing (* Locations *) @@ -252,3 +253,14 @@ let print_toplevel fmt = function let print_prog fmt p = List.iter (print_toplevel fmt) p + + +(* Typed variable *) + +let print_type fmt = function + | TInt -> Format.fprintf fmt "int" + | TReal -> Format.fprintf fmt "real" + | TEnum e -> Format.fprintf fmt "enum { %a }" (print_list print_id ", ") e + +let print_typed_var fmt (p, id, t) = + Format.fprintf fmt "%s%s: %a" (if p then "probe " else "") id print_type t |