summaryrefslogtreecommitdiff
path: root/src/jscomp.sml
diff options
context:
space:
mode:
authorGravatar Adam Chlipala <adamc@hcoop.net>2010-01-02 14:54:15 -0500
committerGravatar Adam Chlipala <adamc@hcoop.net>2010-01-02 14:54:15 -0500
commitd777d7da78fccb8f15eccff680deca36ae57314b (patch)
tree96967222b55ddf2e8ab94d78bbb13cf84fd1ddd4 /src/jscomp.sml
parent547adaccb0b29cc02ff89013f84ae6446665144d (diff)
JavaScript urlification; more lenient export pattern in Corify; only include scripts in pages that use JavaScript
Diffstat (limited to 'src/jscomp.sml')
-rw-r--r--src/jscomp.sml13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/jscomp.sml b/src/jscomp.sml
index ca20e71d..11d75a3a 100644
--- a/src/jscomp.sml
+++ b/src/jscomp.sml
@@ -869,10 +869,21 @@ fun process file =
| EDml _ => unsupported "DML"
| ENextval _ => unsupported "Nextval"
| ESetval _ => unsupported "Nextval"
- | EUnurlify _ => unsupported "EUnurlify"
| EReturnBlob _ => unsupported "EUnurlify"
| ERedirect _ => unsupported "ERedirect"
+ | EUnurlify (e, t) =>
+ let
+ val (e, st) = jsE inner (e, st)
+ val (e', st) = unurlifyExp loc (t, st)
+ in
+ (strcat [str ("{c:\"f\",f:\"unurlify\",a:cons({c:\"c\",v:function(s){var t=s.split(\"/\");var i=0;return "
+ ^ e' ^ "}},cons("),
+ e,
+ str ",null))}"],
+ st)
+ end
+
| ESignalReturn e =>
let
val (e, st) = jsE inner (e, st)