diff options
Diffstat (limited to 'libguile/eval.c')
-rw-r--r-- | libguile/eval.c | 36 |
1 files changed, 17 insertions, 19 deletions
diff --git a/libguile/eval.c b/libguile/eval.c index dc1f0905a..dbabf73af 100644 --- a/libguile/eval.c +++ b/libguile/eval.c @@ -2578,9 +2578,9 @@ evapply: case scm_tc7_asubr: RETURN (SCM_SUBRF (proc) (SCM_UNDEFINED, SCM_UNDEFINED)); case scm_tc7_smob: - if (!SCM_SMOB_DESCRIPTOR (proc).apply) + if (!SCM_SMOB_APPLICABLE_P (proc)) goto badfun; - RETURN (SCM_SMOB_DESCRIPTOR (proc).apply_0 (proc)); + RETURN (SCM_SMOB_APPLY_0 (proc)); case scm_tc7_cclo: t.arg1 = proc; proc = SCM_CCLO_SUBR (proc); @@ -2727,9 +2727,9 @@ evapply: RETURN (SCM_SUBRF (proc) (scm_cons (t.arg1, SCM_EOL))); #endif case scm_tc7_smob: - if (!SCM_SMOB_DESCRIPTOR (proc).apply) + if (!SCM_SMOB_APPLICABLE_P (proc)) goto badfun; - RETURN (SCM_SMOB_DESCRIPTOR (proc).apply_1 (proc, t.arg1)); + RETURN (SCM_SMOB_APPLY_1 (proc, t.arg1)); case scm_tc7_cclo: arg2 = t.arg1; t.arg1 = proc; @@ -2843,9 +2843,9 @@ evapply: case scm_tc7_asubr: RETURN (SCM_SUBRF (proc) (t.arg1, arg2)); case scm_tc7_smob: - if (!SCM_SMOB_DESCRIPTOR (proc).apply) + if (!SCM_SMOB_APPLICABLE_P (proc)) goto badfun; - RETURN (SCM_SMOB_DESCRIPTOR (proc).apply_2 (proc, t.arg1, arg2)); + RETURN (SCM_SMOB_APPLY_2 (proc, t.arg1, arg2)); cclon: case scm_tc7_cclo: #ifdef DEVAL @@ -2982,10 +2982,10 @@ evapply: case scm_tc7_lsubr: RETURN (SCM_SUBRF (proc) (debug.info->a.args)) case scm_tc7_smob: - if (!SCM_SMOB_DESCRIPTOR (proc).apply) + if (!SCM_SMOB_APPLICABLE_P (proc)) goto badfun; - RETURN (SCM_SMOB_DESCRIPTOR (proc).apply_3 - (proc, t.arg1, arg2, SCM_CDDR (debug.info->a.args))); + RETURN (SCM_SMOB_APPLY_3 (proc, t.arg1, arg2, + SCM_CDDR (debug.info->a.args))); case scm_tc7_cclo: goto cclon; case scm_tc7_pws: @@ -3044,10 +3044,10 @@ evapply: arg2, scm_eval_args (x, env, proc)))); case scm_tc7_smob: - if (!SCM_SMOB_DESCRIPTOR (proc).apply) + if (!SCM_SMOB_APPLICABLE_P (proc)) goto badfun; - RETURN (SCM_SMOB_DESCRIPTOR (proc).apply_3 - (proc, t.arg1, arg2, scm_eval_args (x, env, proc))); + RETURN (SCM_SMOB_APPLY_3 (proc, t.arg1, arg2, + scm_eval_args (x, env, proc))); case scm_tc7_cclo: goto cclon; case scm_tc7_pws: @@ -3409,18 +3409,16 @@ tail: } RETURN (EVALCAR (proc, args)); case scm_tc7_smob: - if (!SCM_SMOB_DESCRIPTOR (proc).apply) + if (!SCM_SMOB_APPLICABLE_P (proc)) goto badproc; if (SCM_UNBNDP (arg1)) - RETURN (SCM_SMOB_DESCRIPTOR (proc).apply_0 (proc)) + RETURN (SCM_SMOB_APPLY_0 (proc)) else if (SCM_NULLP (args)) - RETURN (SCM_SMOB_DESCRIPTOR (proc).apply_1 (proc, arg1)) + RETURN (SCM_SMOB_APPLY_1 (proc, arg1)) else if (SCM_NULLP (SCM_CDR (args))) - RETURN (SCM_SMOB_DESCRIPTOR (proc).apply_2 - (proc, arg1, SCM_CAR (args))) + RETURN (SCM_SMOB_APPLY_2 (proc, arg1, SCM_CAR (args))) else - RETURN (SCM_SMOB_DESCRIPTOR (proc).apply_3 - (proc, arg1, SCM_CAR (args), SCM_CDR (args))); + RETURN (SCM_SMOB_APPLY_3 (proc, arg1, SCM_CAR (args), SCM_CDR (args))); case scm_tc7_cclo: #ifdef DEVAL args = (SCM_UNBNDP(arg1) ? SCM_EOL : debug.vect[0].a.args); |