on master help sign in
javascript: added isNull
9ffb9b8raichoo
jsrts/Runtime-common.js+4
@@ -37,3 +37,7 @@ var __IDRRT__tailcall = function(k) {
37
37
38 return ret;
38 return ret;
39};
39};
40+
41+var __IDRRT__isNull = function(s) {
42+ return s == null;
43+};
src/IRTS/CodegenJavaScript.hs+3
@@ -1847,6 +1847,9 @@ translateExpression (SError msg) =
1847translateExpression (SForeign _ _ "putStr" [(FString, var)]) =
1847translateExpression (SForeign _ _ "putStr" [(FString, var)]) =
1848 jsCall (idrRTNamespace ++ "print") [JSVar var]
1848 jsCall (idrRTNamespace ++ "print") [JSVar var]
1849
1849
1850+translateExpression (SForeign _ _ "isNull" [(FPtr, var)]) =
1851+ jsCall (idrRTNamespace ++ "isNull") [JSVar var]
1852+
1850translateExpression (SForeign _ _ fun args) =
1853translateExpression (SForeign _ _ fun args) =
1851 ffi fun (map generateWrapper args)
1854 ffi fun (map generateWrapper args)
1852 where
1855 where
test/Makefile+1−1
@@ -11,7 +11,7 @@ test_java:
11 perl ./runtest.pl without buffer001 --codegen Java
11 perl ./runtest.pl without buffer001 --codegen Java
12
12
13test_js:
13test_js:
14− @perl ./runtest.pl without reg029 reg031 io001 dsl002 io003 effects001 effects002 basic007 buffer001 --codegen node
14+ @perl ./runtest.pl without reg029 reg031 io001 dsl002 io003 effects001 effects002 buffer001 --codegen node
15
15
16test_llvm:
16test_llvm:
17 @perl ./runtest.pl without io003 buffer001 --codegen llvm
17 @perl ./runtest.pl without io003 buffer001 --codegen llvm