form              250 src/compaux.c  static ScmObj unwrap_rec(ScmObj form, ScmObj history)
form              254 src/compaux.c      if (!SCM_PTRP(form)) return form;
form              255 src/compaux.c      if (!SCM_FALSEP(Scm_Memq(form, history))) return form;
form              257 src/compaux.c      if (SCM_PAIRP(form)) {
form              259 src/compaux.c          newh = Scm_Cons(form, history);
form              260 src/compaux.c          ca = unwrap_rec(SCM_CAR(form), newh);
form              261 src/compaux.c          cd = unwrap_rec(SCM_CDR(form), newh);
form              262 src/compaux.c          if (ca == SCM_CAR(form) && cd == SCM_CDR(form)) {
form              263 src/compaux.c              return form;
form              268 src/compaux.c      if (SCM_IDENTIFIERP(form)) {
form              269 src/compaux.c          return SCM_OBJ(SCM_IDENTIFIER(form)->name);
form              271 src/compaux.c      if (SCM_VECTORP(form)) {
form              272 src/compaux.c          int i, j, len = SCM_VECTOR_SIZE(form);
form              273 src/compaux.c          ScmObj elt, *pelt = SCM_VECTOR_ELEMENTS(form);
form              274 src/compaux.c          newh = Scm_Cons(form, history);
form              279 src/compaux.c                  pelt = SCM_VECTOR_ELEMENTS(form);
form              290 src/compaux.c          return form;
form              292 src/compaux.c      return form;
form              295 src/compaux.c  ScmObj Scm_UnwrapSyntax(ScmObj form)
form              297 src/compaux.c      return unwrap_rec(form, SCM_NIL);
form               18 src/extlib.c     ScmObj form;
form               21 src/extlib.c     form = (form_scm);
form               25 src/extlib.c    SCM_RESULT = (Scm_VMMacroExpand(form, SCM_NIL, FALSE));
form               37 src/extlib.c     ScmObj form;
form               40 src/extlib.c     form = (form_scm);
form               44 src/extlib.c    SCM_RESULT = (Scm_VMMacroExpand(form, SCM_NIL, TRUE));
form             5658 src/extlib.c     ScmObj form;
form             5661 src/extlib.c     form = (form_scm);
form             5665 src/extlib.c   SCM_RESULT = Scm_UnwrapSyntax(form);
form              397 src/gauche.h   SCM_EXTERN ScmObj Scm_Eval(ScmObj form, ScmObj env);
form              398 src/gauche.h   SCM_EXTERN ScmObj Scm_EvalCString(const char *form, ScmObj env);
form              413 src/gauche.h   SCM_EXTERN ScmObj Scm_UnwrapSyntax(ScmObj form);
form             2207 src/gauche.h   typedef ScmObj (*ScmTransformerProc)(ScmObj self, ScmObj form, ScmObj env,
form              602 src/gauche/vm.h SCM_EXTERN ScmObj Scm_CallProcedureInliner(ScmObj obj, ScmObj form, ScmObj env);
form              641 src/intlib.c     ScmObj form;
form              648 src/intlib.c     form = (form_scm);
form              657 src/intlib.c   SCM_RESULT = Scm_VMMacroExpand(form, env, once);
form              186 src/macro.c    static ScmObj macro_transform(ScmObj self, ScmObj form, ScmObj env,
form              190 src/macro.c        SCM_ASSERT(SCM_SYNTACTIC_CLOSURE_P(form));
form              191 src/macro.c        return Scm_Apply(proc, SCM_LIST1(form));
form              207 src/macro.c    static ScmObj macro_transform_old(ScmObj self, ScmObj form,
form              211 src/macro.c        SCM_ASSERT(SCM_PAIRP(form));
form              212 src/macro.c        return Scm_VMApply(proc, SCM_CDR(form));
form              229 src/macro.c    static ScmObj macro_autoload(ScmObj self, ScmObj form, ScmObj env, void *data)
form              232 src/macro.c        return mac->transformer(SCM_OBJ(mac), form, env, mac->data);
form              273 src/macro.c        ScmObj form;                /* form being compiled (for error msg) */
form              295 src/macro.c                      pvar, ctx->name, ctx->form);
form              314 src/macro.c                      ctx->name, pvar, ctx->form);
form              349 src/macro.c                   Ctx->name, Ctx->form)
form              377 src/macro.c    static ScmObj compile_rule1(ScmObj form,
form              382 src/macro.c        if (SCM_PAIRP(form)) {
form              384 src/macro.c            SCM_FOR_EACH(pp, form) {
form              399 src/macro.c                                      ctx->name, form);
form              408 src/macro.c                                      ctx->name, form);
form              422 src/macro.c        else if (SCM_VECTORP(form)) {
form              425 src/macro.c            ScmObj l = Scm_VectorToList(SCM_VECTOR(form), 0, -1);
form              429 src/macro.c        else if (patternp && SCM_IDENTIFIERP(form)) {
form              431 src/macro.c            form = SCM_OBJ(SCM_IDENTIFIER(form)->name);
form              434 src/macro.c        if (SCM_SYMBOLP(form)||SCM_IDENTIFIERP(form)) {
form              436 src/macro.c            if (form == SCM_SYM_ELLIPSIS) BAD_ELLIPSIS(ctx);
form              437 src/macro.c            if (!SCM_FALSEP(q = id_memq(form, ctx->literals))) return q;
form              440 src/macro.c                return add_pvar(ctx, spat, form);
form              442 src/macro.c                ScmObj id, pvref = pvar_to_pvref(ctx, spat, form);
form              443 src/macro.c                if (pvref == form) {
form              445 src/macro.c                    if (!SCM_FALSEP(q = id_memq(form, ctx->tvars))) return q;
form              446 src/macro.c                    if (SCM_IDENTIFIERP(form)) {
form              447 src/macro.c                        id = form;
form              449 src/macro.c                        id = Scm_MakeIdentifier(SCM_SYMBOL(form),
form              460 src/macro.c        return form;
form              499 src/macro.c            ctx.form = SCM_CAR(rule);
form              500 src/macro.c            if (!SCM_PAIRP(ctx.form)) goto badform;
form              501 src/macro.c            pat->pattern = compile_rule1(SCM_CDR(ctx.form), pat, &ctx, TRUE);
form              503 src/macro.c            ctx.form = SCM_CADR(rule);
form              504 src/macro.c            tmpl->pattern = compile_rule1(ctx.form, tmpl, &ctx, FALSE);
form              600 src/macro.c    static int match_synrule(ScmObj form, ScmObj pattern, ScmObj env,
form              693 src/macro.c    static inline int match_subpattern(ScmObj form, ScmSyntaxPattern *pat,
form              697 src/macro.c        while (SCM_PAIRP(form)) {
form              698 src/macro.c            if (!match_synrule(SCM_CAR(form), pat->pattern, env, mvec))
form              700 src/macro.c            form = SCM_CDR(form);
form              702 src/macro.c        if (!SCM_NULLP(form)) return FALSE;
form              710 src/macro.c    static int match_synrule(ScmObj form, ScmObj pattern, ScmObj env,
form              714 src/macro.c            match_insert(pattern, form, mvec);
form              718 src/macro.c            return match_identifier(SCM_IDENTIFIER(pattern), form, env);
form              721 src/macro.c            return match_subpattern(form, SCM_SYNTAX_PATTERN(pattern), env, mvec);
form              727 src/macro.c                    return match_subpattern(form, SCM_SYNTAX_PATTERN(elt),
form              729 src/macro.c                } else if (!SCM_PAIRP(form)) {
form              732 src/macro.c                    if (!match_synrule(SCM_CAR(form), elt, env, mvec))
form              735 src/macro.c                    form = SCM_CDR(form);
form              739 src/macro.c                return match_synrule(form, pattern, env, mvec);
form              741 src/macro.c                return SCM_NULLP(form);
form              745 src/macro.c            if (!SCM_VECTORP(form)) return FALSE;
form              747 src/macro.c            flen = SCM_VECTOR_SIZE(form);
form              752 src/macro.c                if (!match_synrule(SCM_VECTOR_ELEMENT(form, i),
form              761 src/macro.c                    SCM_APPEND1(h, t, SCM_VECTOR_ELEMENT(form, i));
form              769 src/macro.c        return Scm_EqualP(pattern, form);
form              871 src/macro.c    static ScmObj synrule_expand(ScmObj form, ScmObj env, ScmSyntaxRules *sr)
form              878 src/macro.c        Scm_Printf(SCM_CUROUT, "**** synrule_transform: %S\n", form);
form              885 src/macro.c            if (match_synrule(SCM_CDR(form), sr->rules[i].pattern, env, mvec)) {
form              897 src/macro.c        Scm_Error("malformed %S: %S", SCM_CAR(form), form);
form              901 src/macro.c    static ScmObj synrule_transform(ScmObj self, ScmObj form, ScmObj env,
form              905 src/macro.c        return synrule_expand(form, env, sr);
form              449 src/read.c                         ScmObj form = read_item(port, ctx);
form              452 src/read.c                                                    SCM_LIST1(form), ctx, FALSE);
form              458 src/read.c                         ScmObj form;
form              464 src/read.c                             form = read_item(port, ctx);
form              465 src/read.c                             return SCM_LIST2(SCM_SYM_DEBUG_PRINT, form);
form             1054 src/read.c         ScmObj form, r;
form             1064 src/read.c         form = read_list_int(port, ')', ctx, &has_ref, line);
form             1065 src/read.c         len = Scm_Length(form);
form             1067 src/read.c             Scm_ReadError(port, "bad #,-form: #,%S", form);
form             1069 src/read.c         r = process_sharp_comma(port, SCM_CAR(form), SCM_CDR(form), ctx, has_ref);
form             1961 src/vm.c                       ScmObj form, cp;
form             1963 src/vm.c                       FETCH_OPERAND(form);
form             1966 src/vm.c                       SCM_FOR_EACH(cp, SCM_CDR(form)) {
form             1969 src/vm.c                       VAL0 = SCM_CAR(form); /* proc */