From bc7a09d702e53faaa882bb7b2591abe68ff5648e Mon Sep 17 00:00:00 2001 From: Adam Chlipala Date: Sun, 26 Apr 2009 09:02:17 -0400 Subject: Returning a blob as page result --- src/cjr_print.sml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'src/cjr_print.sml') diff --git a/src/cjr_print.sml b/src/cjr_print.sml index 07e3931f..3f7ec1e1 100644 --- a/src/cjr_print.sml +++ b/src/cjr_print.sml @@ -1276,8 +1276,26 @@ fun p_exp' par env (e, loc) = string "tmp;", newline, string "})"] + | EReturnBlob {blob, mimeType, t} => + box [string "({", + newline, + p_typ env t, + space, + string "tmp;", + newline, + string "uw_return_blob(ctx, ", + p_exp env blob, + string ", ", + p_exp env mimeType, + string ");", + newline, + string "tmp;", + newline, + string "})"] | EApp ((EError (e, (TFun (_, ran), _)), loc), _) => p_exp env (EError (e, ran), loc) + | EApp ((EReturnBlob {blob, mimeType, t = (TFun (_, ran), _)}, loc), _) => + p_exp env (EReturnBlob {blob = blob, mimeType = mimeType, t = ran}, loc) | EFfiApp (m, x, es) => box [string "uw_", p_ident m, -- cgit v1.2.3