diff options
Diffstat (limited to 'src/elab_print.sml')
-rw-r--r-- | src/elab_print.sml | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/elab_print.sml b/src/elab_print.sml index 0e7fe7d7..d0ff8d5f 100644 --- a/src/elab_print.sml +++ b/src/elab_print.sml @@ -220,8 +220,19 @@ fun p_pat' par env (p, _) = | PCon (pc, SOME p) => parenIf par (box [p_patCon env pc, space, p_pat' true env p]) + | PRecord (xps, flex) => + let + val pps = map (fn (x, p) => box [string x, space, string "=", space, p_pat env p]) xps + in + box [string "{", + p_list_sep (box [string ",", space]) (fn x => x) + (case flex of + NONE => pps + | SOME _ => pps @ [string "..."]), + string "}"] + end -val p_pat = p_pat' false +and p_pat x = p_pat' false x fun p_exp' par env (e, _) = case e of |