gf               1633 src/class.c    static ScmObj builtin_initialize(ScmObj *args, int nargs, ScmGeneric *gf)
gf               1930 src/class.c    static ScmObj generic_name(ScmGeneric *gf)
gf               1932 src/class.c        return gf->common.info;
gf               1935 src/class.c    static void generic_name_set(ScmGeneric *gf, ScmObj val)
gf               1937 src/class.c        gf->common.info = val;
gf               1940 src/class.c    static ScmObj generic_methods(ScmGeneric *gf)
gf               1942 src/class.c        return gf->methods;
gf               1945 src/class.c    static void generic_methods_set(ScmGeneric *gf, ScmObj val)
gf               1947 src/class.c        gf->methods = val;
gf               1955 src/class.c        ScmGeneric *gf = SCM_GENERIC(generic_allocate(SCM_CLASS_GENERIC, SCM_NIL));
gf               1956 src/class.c        gf->common.info = name;
gf               1958 src/class.c            gf->fallback = fallback;
gf               1959 src/class.c            gf->data = data;
gf               1961 src/class.c        return SCM_OBJ(gf);
gf               1965 src/class.c    ScmObj Scm_NoNextMethod(ScmObj *args, int nargs, ScmGeneric *gf)
gf               1968 src/class.c                  SCM_OBJ(gf), Scm_ArrayToList(args, nargs));
gf               1973 src/class.c    ScmObj Scm_NoOperation(ScmObj *arg, int nargs, ScmGeneric *gf)
gf               1979 src/class.c    ScmObj Scm_InvalidApply(ScmObj *args, int nargs, ScmGeneric *gf)
gf               1986 src/class.c    ScmObj Scm_ComputeApplicableMethods(ScmGeneric *gf, ScmObj *args, int nargs)
gf               1988 src/class.c        ScmObj methods = gf->methods, mp;
gf               2014 src/class.c        ScmGeneric *gf = SCM_GENERIC(args[0]);
gf               2023 src/class.c        return Scm_ComputeApplicableMethods(gf, argv, n);
gf               2327 src/class.c    ScmObj Scm_AddMethod(ScmGeneric *gf, ScmMethod *method)
gf               2332 src/class.c        if (method->generic && method->generic != gf)
gf               2335 src/class.c        if (!SCM_FALSEP(Scm_Memq(SCM_OBJ(method), gf->methods)))
gf               2338 src/class.c                      method, gf);
gf               2339 src/class.c        method->generic = gf;
gf               2341 src/class.c        pair = Scm_Cons(SCM_OBJ(method), gf->methods);
gf               2344 src/class.c        (void)SCM_INTERNAL_MUTEX_LOCK(gf->lock);
gf               2345 src/class.c        SCM_FOR_EACH(mp, gf->methods) {
gf               2362 src/class.c        if (!replaced) gf->methods = pair;
gf               2363 src/class.c        (void)SCM_INTERNAL_MUTEX_UNLOCK(gf->lock);
gf               2385 src/class.c    ScmObj Scm_DeleteMethod(ScmGeneric *gf, ScmMethod *method)
gf               2389 src/class.c        if (!method->generic || method->generic != gf) return SCM_UNDEFINED;
gf               2391 src/class.c        (void)SCM_INTERNAL_MUTEX_LOCK(gf->lock);
gf               2392 src/class.c        mp = gf->methods;
gf               2395 src/class.c                gf->methods = SCM_CDR(mp);
gf               2408 src/class.c        (void)SCM_INTERNAL_MUTEX_UNLOCK(gf->lock);
gf               2431 src/class.c    ScmObj Scm_MakeNextMethod(ScmGeneric *gf, ScmObj methods,
gf               2437 src/class.c        nm->generic = gf;
gf               2923 src/class.c    void Scm_InitBuiltinGeneric(ScmGeneric *gf, const char *name, ScmModule *mod)
gf               2926 src/class.c        gf->common.info = s;
gf               2927 src/class.c        if (gf->fallback == NULL) {
gf               2928 src/class.c    	gf->fallback = Scm_NoNextMethod;
gf               2930 src/class.c        (void)SCM_INTERNAL_MUTEX_INIT(gf->lock);
gf               2931 src/class.c        Scm_Define(mod, SCM_SYMBOL(s), SCM_OBJ(gf));
gf               3061 src/class.c    #define GINIT(gf, nam) \
gf               3062 src/class.c        Scm_InitBuiltinGeneric(gf, nam, mod);
gf               2311 src/gauche.h       ScmObj (*fallback)(ScmObj *args, int nargs, ScmGeneric *gf);
gf               2330 src/gauche.h   SCM_EXTERN void Scm_InitBuiltinGeneric(ScmGeneric *gf, const char *name,
gf               2335 src/gauche.h   SCM_EXTERN ScmObj Scm_NoNextMethod(ScmObj *args, int nargs, ScmGeneric *gf);
gf               2336 src/gauche.h   SCM_EXTERN ScmObj Scm_NoOperation(ScmObj *args, int nargs, ScmGeneric *gf);
gf               2337 src/gauche.h   SCM_EXTERN ScmObj Scm_InvalidApply(ScmObj *args, int nargs, ScmGeneric *gf);
gf               2357 src/gauche.h   #define SCM_DEFINE_METHOD(cvar, gf, req, opt, specs, func, data)        \
gf               2362 src/gauche.h           gf, specs, func, data, NULL                                     \
gf                113 src/gauche/class.h SCM_EXTERN ScmObj Scm_ComputeApplicableMethods(ScmGeneric *gf,
gf                117 src/gauche/class.h SCM_EXTERN ScmObj Scm_MakeNextMethod(ScmGeneric *gf, ScmObj methods,
gf                119 src/gauche/class.h SCM_EXTERN ScmObj Scm_AddMethod(ScmGeneric *gf, ScmMethod *method);
gf                120 src/gauche/class.h SCM_EXTERN ScmObj Scm_DeleteMethod(ScmGeneric *gf, ScmMethod *method);
gf                 13 src/moplib.c   static ScmObj call_fallback_proc(ScmObj *args, int nargs, ScmGeneric *gf)
gf                 15 src/moplib.c     ScmObj proc = SCM_OBJ(gf->data);
gf                 53 src/moplib.c     ScmObj gf;
gf                 60 src/moplib.c     gf = (gf_scm);
gf                 69 src/moplib.c     if (!Scm_TypeP(gf, SCM_CLASS_GENERIC))
gf                 70 src/moplib.c       Scm_Error("generic function requied, but got %S", gf);
gf                 76 src/moplib.c     SCM_RETURN(Scm_MakeNextMethod(SCM_GENERIC(gf), methods, argv, nargs, FALSE));
gf                109 src/number.c   static ScmObj bad_number_method(ScmObj *args, int nargs, ScmGeneric *gf)
gf                111 src/number.c       const char *fn = (const char *)SCM_GENERIC_DATA(gf);
gf                865 src/number.c   #define APPLY_GENERIC_ARITH(v, gf, arg0, arg1, args)    \
gf                867 src/number.c       v = Scm_Apply(SCM_OBJ(&gf), SCM_LIST2(arg0, arg1)); \
gf                 48 src/write.c    static ScmObj write_object_fallback(ScmObj *args, int nargs, ScmGeneric *gf);
gf                287 src/write.c    static ScmObj write_object_fallback(ScmObj *args, int nargs, ScmGeneric *gf)