Add js-wasm.h from arik's repo
[ldk-java] / ts / js-wasm.h
1 #ifndef export
2 #define export __attribute__((visibility("default")))
3 #endif
4
5 #ifndef JS_H
6
7 unsigned int
8 js_strlen(const char *str)
9 {
10         const char *s;
11
12         for (s = str; *s; ++s)
13                 ;
14         return (s - str);
15 }
16
17 typedef double JSValue;
18 typedef int JSFunction;
19 extern JSFunction js_register_function(char*,unsigned int);
20 extern JSValue js_invoke_function(JSFunction,JSValue,JSValue,JSValue,JSValue,JSValue,JSValue,JSValue,JSValue,JSValue,JSValue);
21 extern void js_release(JSValue);
22
23 JSValue const JS_NULL = 0.0;
24 JSValue const JS_UNDEFINED = 1.0;
25 JSValue const DOM_SELF = 2.0;
26 JSValue const DOM_WINDOW = 2.0;
27 JSValue const DOM_DOCUMENT = 3.0;
28 JSValue const DOM_BODY = 4.0;
29
30 static inline JSValue js_invoke_function_0(JSFunction fn){
31   return js_invoke_function(fn,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0);
32 }
33 static inline JSValue js_invoke_function_1(JSFunction fn, JSValue a){
34   return js_invoke_function(fn,a,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0);
35 }
36 static inline JSValue js_invoke_function_2(JSFunction fn, JSValue a, JSValue b){
37   return js_invoke_function(fn,a,b,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0);
38 }
39 static inline JSValue js_invoke_function_3(JSFunction fn, JSValue a, JSValue b, JSValue c){
40   return js_invoke_function(fn,a,b,c,0.0,0.0,0.0,0.0,0.0,0.0,0.0); 
41 }
42 static inline JSValue js_invoke_function_4(JSFunction fn, JSValue a, JSValue b, JSValue c, JSValue d){
43   return js_invoke_function(fn,a,b,c,d,0.0,0.0,0.0,0.0,0.0,0.0);
44 }
45 static inline JSValue js_invoke_function_5(JSFunction fn, JSValue a, JSValue b, JSValue c, JSValue d, JSValue e){
46   return js_invoke_function(fn,a,b,c,d,e,0.0,0.0,0.0,0.0,0.0);
47 }
48 static inline JSValue js_invoke_function_6(JSFunction fn, JSValue a, JSValue b, JSValue c, JSValue d, JSValue e, JSValue f){
49   return js_invoke_function(fn,a,b,c,d,e,f,0.0,0.0,0.0,0.0);
50 }
51 static inline JSValue js_invoke_function_7(JSFunction fn, JSValue a, JSValue b, JSValue c, JSValue d, JSValue e, JSValue f, JSValue g){
52   return js_invoke_function(fn,a,b,c,d,e,f,g,0.0,0.0,0.0);
53 }
54 static inline JSValue js_invoke_function_8(JSFunction fn, JSValue a, JSValue b, JSValue c, JSValue d, JSValue e, JSValue f, JSValue g, JSValue h){
55   return js_invoke_function(fn,a,b,c,d,e,f,g,h,0.0,0.0);
56 }
57 static inline JSValue js_invoke_function_9(JSFunction fn, JSValue a, JSValue b, JSValue c, JSValue d, JSValue e, JSValue f, JSValue g, JSValue h, JSValue i){
58   return js_invoke_function(fn,a,b,c,d,e,f,g,h,i,0.0);
59 }
60 static inline JSValue js_invoke_function_10(JSFunction fn, JSValue a, JSValue b, JSValue c, JSValue d, JSValue e, JSValue f, JSValue g, JSValue h, JSValue i, JSValue j){
61   return js_invoke_function(fn,a,b,c,d,e,f,g,h,i,j);
62 }
63 #endif