From a3431335118a00130de16857dc3d5e6d0c90c074 Mon Sep 17 00:00:00 2001 From: Patrick Walton Date: Fri, 2 Jul 2010 11:54:07 -0700 Subject: [PATCH] Allow formatting individual decl_params --- src/boot/fe/ast.ml | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/boot/fe/ast.ml b/src/boot/fe/ast.ml index 6962a9e08dd..7f5774272eb 100644 --- a/src/boot/fe/ast.ml +++ b/src/boot/fe/ast.ml @@ -1180,6 +1180,13 @@ and fmt_stmt_body (ff:Format.formatter) (s:stmt) : unit = | STMT_slice _ -> fmt ff "?stmt_slice?" end +and fmt_decl_param (ff:Format.formatter) (param:ty_param) : unit = + let (ident, (i, e)) = param in + fmt_effect ff e; + if e <> PURE then fmt ff " "; + fmt_ident ff ident; + fmt ff "=" i + and fmt_decl_params (ff:Format.formatter) (params:ty_param array) : unit = if Array.length params = 0 then () @@ -1190,11 +1197,7 @@ and fmt_decl_params (ff:Format.formatter) (params:ty_param array) : unit = do if i <> 0 then fmt ff ", "; - let (ident, (i, e)) = params.(i) in - fmt_effect ff e; - if e <> PURE then fmt ff " "; - fmt_ident ff ident; - fmt ff "=" i + fmt_decl_param ff params.(i) done; fmt ff "]" end; @@ -1347,6 +1350,7 @@ let sprintf_tag = sprintf_fmt fmt_tag;; let sprintf_carg = sprintf_fmt fmt_carg;; let sprintf_constr = sprintf_fmt fmt_constr;; let sprintf_mod_items = sprintf_fmt fmt_mod_items;; +let sprintf_decl_param = sprintf_fmt fmt_decl_param;; let sprintf_decl_params = sprintf_fmt fmt_decl_params;; let sprintf_app_args = sprintf_fmt fmt_app_args;;