summaryrefslogtreecommitdiff
path: root/src/cli/runtime/RestFn4.cs
diff options
context:
space:
mode:
authorRich Hickey <richhickey@gmail.com>2006-06-09 12:42:56 +0000
committerRich Hickey <richhickey@gmail.com>2006-06-09 12:42:56 +0000
commit4f72b81de88948e149af93dd96406e4f519e15c6 (patch)
treee4bdf36a13c6fbd2bee70eceada82aef7bf9b945 /src/cli/runtime/RestFn4.cs
parent3e18fcb60b00f869f74b112af5b5d90b9a9edba0 (diff)
added ISeq, ISequential, modified Cons
Diffstat (limited to 'src/cli/runtime/RestFn4.cs')
-rw-r--r--src/cli/runtime/RestFn4.cs36
1 files changed, 18 insertions, 18 deletions
diff --git a/src/cli/runtime/RestFn4.cs b/src/cli/runtime/RestFn4.cs
index 04dfb33f..29b0a21f 100644
--- a/src/cli/runtime/RestFn4.cs
+++ b/src/cli/runtime/RestFn4.cs
@@ -17,38 +17,38 @@ namespace org.clojure.runtime
public abstract class RestFn4 : AFn{
- public abstract Object doInvoke(ThreadLocalData tld, Object arg1, Object arg2, Object arg3, Object arg4, Cons rest)
+ public abstract Object doInvoke(ThreadLocalData tld, Object arg1, Object arg2, Object arg3, Object arg4, ISeq rest)
/*throws Exception*/;
-override public Object applyTo(ThreadLocalData tld, Cons arglist) /*throws Exception*/
+override public Object applyTo(ThreadLocalData tld, ISeq arglist) /*throws Exception*/
{
switch (RT.boundedLength(arglist, 4))
{
case 0:
return invoke(tld);
case 1:
- return invoke(tld, arglist.first);
+ return invoke(tld, arglist.first());
case 2:
- return invoke(tld, arglist.first
- , (arglist = arglist.rest).first
+ return invoke(tld, arglist.first()
+ , (arglist = arglist.rest()).first()
);
case 3:
- return invoke(tld, arglist.first
- , (arglist = arglist.rest).first
- , (arglist = arglist.rest).first
+ return invoke(tld, arglist.first()
+ , (arglist = arglist.rest()).first()
+ , (arglist = arglist.rest()).first()
);
case 4:
- return invoke(tld, arglist.first
- , (arglist = arglist.rest).first
- , (arglist = arglist.rest).first
- , (arglist = arglist.rest).first
+ return invoke(tld, arglist.first()
+ , (arglist = arglist.rest()).first()
+ , (arglist = arglist.rest()).first()
+ , (arglist = arglist.rest()).first()
);
default:
- return doInvoke(tld, arglist.first
- , (arglist = arglist.rest).first
- , (arglist = arglist.rest).first
- , (arglist = arglist.rest).first
- , arglist.rest);
+ return doInvoke(tld, arglist.first()
+ , (arglist = arglist.rest()).first()
+ , (arglist = arglist.rest()).first()
+ , (arglist = arglist.rest()).first()
+ , arglist.rest());
}
}
@@ -64,7 +64,7 @@ override public Object invoke(ThreadLocalData tld, Object arg1, Object arg2, Obj
return doInvoke(tld, arg1, arg2, arg3, arg4, RT.list(arg5));
}
-override public Object invoke(ThreadLocalData tld, Object arg1, Object arg2, Object arg3, Object arg4, Object arg5, Cons args)
+override public Object invoke(ThreadLocalData tld, Object arg1, Object arg2, Object arg3, Object arg4, Object arg5, ISeq args)
/*throws Exception*/
{
return doInvoke(tld, arg1, arg2, arg3, arg4, RT.listStar(arg5, args));