ruby-changes:64256
From: Nobuyoshi <ko1@a...>
Date: Fri, 18 Dec 2020 12:11:06 +0900 (JST)
Subject: [ruby-changes:64256] 66090b9d10 (master): Use rb_id_attrset without intermediate strings
https://git.ruby-lang.org/ruby.git/commit/?id=66090b9d10 From 66090b9d10cdaed917b525225e59d1c19e399248 Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada <nobu@r...> Date: Fri, 18 Dec 2020 12:10:20 +0900 Subject: Use rb_id_attrset without intermediate strings diff --git a/object.c b/object.c index 4fe6b02..301c77e 100644 --- a/object.c +++ b/object.c @@ -2332,7 +2332,7 @@ rb_mod_attr_writer(int argc, VALUE *argv, VALUE klass) https://github.com/ruby/ruby/blob/trunk/object.c#L2332 for (i=0; i<argc; i++) { ID id = id_for_attr(klass, argv[i]); rb_attr(klass, id, FALSE, TRUE, TRUE); - rb_ary_push(names, rb_str_intern(rb_sprintf("%"PRIsVALUE"=", ID2SYM(id)))); + rb_ary_push(names, ID2SYM(rb_id_attrset(id))); } return names; } @@ -2363,11 +2363,10 @@ rb_mod_attr_accessor(int argc, VALUE *argv, VALUE klass) https://github.com/ruby/ruby/blob/trunk/object.c#L2363 for (i=0; i<argc; i++) { ID id = id_for_attr(klass, argv[i]); - VALUE idv = ID2SYM(id); rb_attr(klass, id, TRUE, TRUE, TRUE); - rb_ary_push(names, idv); - rb_ary_push(names, rb_str_intern(rb_sprintf("%"PRIsVALUE"=", idv))); + rb_ary_push(names, ID2SYM(id)); + rb_ary_push(names, ID2SYM(rb_id_attrset(id))); } return names; } -- cgit v0.10.2 -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/