[前][次][番号順一覧][スレッド一覧]

ruby-changes:24985

From: nobu <ko1@a...>
Date: Thu, 27 Sep 2012 11:36:49 +0900 (JST)
Subject: [ruby-changes:24985] nobu:r37037 (trunk): eval.c: invariant IDs

nobu	2012-09-27 11:36:36 +0900 (Thu, 27 Sep 2012)

  New Revision: 37037

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=37037

  Log:
    eval.c: invariant IDs
    
    * eval.c (rb_mod_include, rb_obj_extend): move invariant IDs to
      outside of loop.

  Modified files:
    trunk/eval.c

Index: eval.c
===================================================================
--- eval.c	(revision 37036)
+++ eval.c	(revision 37037)
@@ -964,12 +964,16 @@
 rb_mod_include(int argc, VALUE *argv, VALUE module)
 {
     int i;
+    ID id_append_features, id_included;
 
+    CONST_ID(id_append_features, "append_features");
+    CONST_ID(id_included, "included");
+
     for (i = 0; i < argc; i++)
 	Check_Type(argv[i], T_MODULE);
     while (argc--) {
-	rb_funcall(argv[argc], rb_intern("append_features"), 1, module);
-	rb_funcall(argv[argc], rb_intern("included"), 1, module);
+	rb_funcall(argv[argc], id_append_features, 1, module);
+	rb_funcall(argv[argc], id_included, 1, module);
     }
     return module;
 }
@@ -1280,13 +1284,17 @@
 rb_obj_extend(int argc, VALUE *argv, VALUE obj)
 {
     int i;
+    ID id_extend_object, id_extended;
 
+    CONST_ID(id_extend_object, "extend_object");
+    CONST_ID(id_extended, "extended");
+
     rb_check_arity(argc, 1, UNLIMITED_ARGUMENTS);
     for (i = 0; i < argc; i++)
 	Check_Type(argv[i], T_MODULE);
     while (argc--) {
-	rb_funcall(argv[argc], rb_intern("extend_object"), 1, obj);
-	rb_funcall(argv[argc], rb_intern("extended"), 1, obj);
+	rb_funcall(argv[argc], id_extend_object, 1, obj);
+	rb_funcall(argv[argc], id_extended, 1, obj);
     }
     return obj;
 }

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]