diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/cli/runtime/Var.cs | 2 | ||||
-rw-r--r-- | src/jvm/clojure/lang/Var.java | 2 | ||||
-rw-r--r-- | src/lisp/clojure.lisp | 4 |
3 files changed, 4 insertions, 4 deletions
diff --git a/src/cli/runtime/Var.cs b/src/cli/runtime/Var.cs index 5df61798..37c57076 100644 --- a/src/cli/runtime/Var.cs +++ b/src/cli/runtime/Var.cs @@ -51,5 +51,5 @@ Binding getThreadBinding()
{ else
newtb = tb.put(thread, b);
} while (tb != Interlocked.CompareExchange(ref threadBindings, newtb, tb));
-}
private IFn fn(){
return (IFn)getValue();
}
override public Object invoke() /*throws Exception*/
{
return fn().invoke();
}
override public Object invoke( Object arg1) /*throws Exception*/
{
return fn().invoke(arg1);
}
override public Object invoke( Object arg1, Object arg2) /*throws Exception*/
{
return fn().invoke(arg1,arg2);
}
override public Object invoke( Object arg1, Object arg2, Object arg3) /*throws Exception*/
{
return fn().invoke(arg1,arg2,arg3);
}
override public Object invoke( Object arg1, Object arg2, Object arg3, Object arg4) /*throws Exception*/
{
return fn().invoke(arg1,arg2,arg3,arg4);
}
override public Object invoke( Object arg1, Object arg2, Object arg3, Object arg4, Object arg5)
/*throws Exception*/
{
return fn().invoke(arg1,arg2,arg3,arg4,arg5);
}
override public Object invoke( Object arg1, Object arg2, Object arg3, Object arg4, Object arg5, params Object[] args)
/*throws Exception*/
{
return fn().invoke(arg1,arg2,arg3,arg4,arg5,args);
}
}
+}
public IFn fn(){
return (IFn)getValue();
}
override public Object invoke() /*throws Exception*/
{
return fn().invoke();
}
override public Object invoke( Object arg1) /*throws Exception*/
{
return fn().invoke(arg1);
}
override public Object invoke( Object arg1, Object arg2) /*throws Exception*/
{
return fn().invoke(arg1,arg2);
}
override public Object invoke( Object arg1, Object arg2, Object arg3) /*throws Exception*/
{
return fn().invoke(arg1,arg2,arg3);
}
override public Object invoke( Object arg1, Object arg2, Object arg3, Object arg4) /*throws Exception*/
{
return fn().invoke(arg1,arg2,arg3,arg4);
}
override public Object invoke( Object arg1, Object arg2, Object arg3, Object arg4, Object arg5)
/*throws Exception*/
{
return fn().invoke(arg1,arg2,arg3,arg4,arg5);
}
override public Object invoke( Object arg1, Object arg2, Object arg3, Object arg4, Object arg5, params Object[] args)
/*throws Exception*/
{
return fn().invoke(arg1,arg2,arg3,arg4,arg5,args);
}
}
}
diff --git a/src/jvm/clojure/lang/Var.java b/src/jvm/clojure/lang/Var.java index dfed1144..1b30519c 100644 --- a/src/jvm/clojure/lang/Var.java +++ b/src/jvm/clojure/lang/Var.java @@ -102,7 +102,7 @@ private void setThreadBinding(Binding b) { } while (!threadBindings.compareAndSet(tb, newtb)); } -private IFn fn(){ +final public IFn fn(){ return (IFn)getValue(); } diff --git a/src/lisp/clojure.lisp b/src/lisp/clojure.lisp index 6975221f..1d9952de 100644 --- a/src/lisp/clojure.lisp +++ b/src/lisp/clojure.lisp @@ -839,7 +839,7 @@ ((:expression :return) (format t "~A.getValue()" (var-member-name (@ :symbol expr)))) (:fn - (format t "~A.fn" (var-member-name (@ :symbol expr)))) + (format t "~A.fn()" (var-member-name (@ :symbol expr)))) (:statement))) (defun emit-accessor (context expr) @@ -1138,7 +1138,7 @@ (defun emit-main (context expr) (ccase context (:top - (format t "static public void ~A(String[] args){~%try{~%~A.fn.invoke(args);~%}~%catch(Exception ex){}~%}~%" + (format t "static public void ~A(String[] args){~%try{~%~A.fn().invoke(args);~%}~%catch(Exception ex){}~%}~%" (main-string) (var-member-name (@ :fname expr)))))) (defun main-string () |