diff --git a/src/ast.ml b/src/ast.ml index 2179b24..78f1133 100644 --- a/src/ast.ml +++ b/src/ast.ml @@ -47,6 +47,7 @@ type t_expression = | ETriOp of full_ty * triop * t_expression * t_expression * t_expression | EComp of full_ty * compop * t_expression * t_expression | EWhen of full_ty * t_expression * t_expression + | EFby of full_ty * t_expression * t_expression | EConst of full_ty * const | ETuple of full_ty * (t_expression list) | EApp of full_ty * t_node * t_expression diff --git a/src/parser.mly b/src/parser.mly index 5bc54e9..20632a7 100644 --- a/src/parser.mly +++ b/src/parser.mly @@ -421,3 +421,4 @@ ident_comma_list: | IDENT COMMA ident_comma_list { $1 :: $3 } ; + diff --git a/src/pp.ml b/src/pp.ml index fa537f1..035c84e 100644 --- a/src/pp.ml +++ b/src/pp.ml @@ -33,6 +33,13 @@ let pp_expression = | _ -> raise (MyTypeError "This exception should not have been raised.") in match expression with + | EFby (_, e1, e2) -> + begin + Format.fprintf fmt "\t\t\t%sFBY\n%a\t\t\tFBY\n%a" + prefix + (pp_expression_aux (upd_prefix prefix)) e1 + (pp_expression_aux (upd_prefix prefix)) e2 + end | EWhen (_, e1, e2) -> begin Format.fprintf fmt "\t\t\t%sWHEN\n%a\t\t\tWHEN\n%a"