diff options
-rw-r--r-- | libguile/eval.c | 15 | ||||
-rw-r--r-- | libguile/eval.h | 6 |
2 files changed, 20 insertions, 1 deletions
diff --git a/libguile/eval.c b/libguile/eval.c index b52cc2788..e66071410 100644 --- a/libguile/eval.c +++ b/libguile/eval.c @@ -477,6 +477,21 @@ scm_call_4 (SCM proc, SCM arg1, SCM arg2, SCM arg3, SCM arg4) } SCM +scm_call_5 (SCM proc, SCM arg1, SCM arg2, SCM arg3, SCM arg4, SCM arg5) +{ + SCM args[] = { arg1, arg2, arg3, arg4, arg5 }; + return scm_c_vm_run (scm_the_vm (), proc, args, 5); +} + +SCM +scm_call_6 (SCM proc, SCM arg1, SCM arg2, SCM arg3, SCM arg4, SCM arg5, + SCM arg6) +{ + SCM args[] = { arg1, arg2, arg3, arg4, arg5, arg6 }; + return scm_c_vm_run (scm_the_vm (), proc, args, 6); +} + +SCM scm_call_n (SCM proc, SCM *argv, size_t nargs) { return scm_c_vm_run (scm_the_vm (), proc, argv, nargs); diff --git a/libguile/eval.h b/libguile/eval.h index 969cce129..f193ad64e 100644 --- a/libguile/eval.h +++ b/libguile/eval.h @@ -3,7 +3,7 @@ #ifndef SCM_EVAL_H #define SCM_EVAL_H -/* Copyright (C) 1995,1996,1998,1999,2000,2001,2002,2003,2004,2008,2009,2010 +/* Copyright (C) 1995,1996,1998,1999,2000,2001,2002,2003,2004,2008,2009,2010,2011 * Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or @@ -68,6 +68,10 @@ SCM_API SCM scm_call_1 (SCM proc, SCM arg1); SCM_API SCM scm_call_2 (SCM proc, SCM arg1, SCM arg2); SCM_API SCM scm_call_3 (SCM proc, SCM arg1, SCM arg2, SCM arg3); SCM_API SCM scm_call_4 (SCM proc, SCM arg1, SCM arg2, SCM arg3, SCM arg4); +SCM_API SCM scm_call_5 (SCM proc, SCM arg1, SCM arg2, SCM arg3, SCM arg4, + SCM arg5); +SCM_API SCM scm_call_6 (SCM proc, SCM arg1, SCM arg2, SCM arg3, SCM arg4, + SCM arg5, SCM arg6); SCM_API SCM scm_call_n (SCM proc, SCM *argv, size_t nargs); SCM_API SCM scm_apply_0 (SCM proc, SCM args); SCM_API SCM scm_apply_1 (SCM proc, SCM arg1, SCM args); |