зеркало из https://github.com/github/ruby.git
variable.c (rb_st_insert_id_and_value): reduce args
Minor simplification; this will hopefully make future patches for switching to id_table easier-to-review. * internal.h (rb_st_insert_id_and_value): update prototype * variable.c (rb_st_insert_id_and_value): reduce args (find_class_path): adjust call for less args (rb_ivar_set): ditto (rb_cvar_set): ditto * class.c (rb_singleton_class_attached): ditto git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52374 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
Родитель
57880d7e35
Коммит
a666e9b5f2
|
@ -1,3 +1,12 @@
|
|||
Fri Oct 30 10:37:56 2015 Eric Wong <e@80x24.org>
|
||||
|
||||
* internal.h (rb_st_insert_id_and_value): update prototype
|
||||
* variable.c (rb_st_insert_id_and_value): reduce args
|
||||
(find_class_path): adjust call for less args
|
||||
(rb_ivar_set): ditto
|
||||
(rb_cvar_set): ditto
|
||||
* class.c (rb_singleton_class_attached): ditto
|
||||
|
||||
Fri Oct 30 09:57:22 2015 SHIBATA Hiroshi <hsbt@ruby-lang.org>
|
||||
|
||||
* gems/bundled_gems: update latest gems.
|
||||
|
|
2
class.c
2
class.c
|
@ -426,7 +426,7 @@ rb_singleton_class_attached(VALUE klass, VALUE obj)
|
|||
if (!RCLASS_IV_TBL(klass)) {
|
||||
RCLASS_IV_TBL(klass) = st_init_numtable();
|
||||
}
|
||||
rb_st_insert_id_and_value(klass, RCLASS_IV_TBL(klass), id_attached, obj);
|
||||
rb_st_insert_id_and_value(klass, id_attached, obj);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -1318,7 +1318,7 @@ void rb_gc_mark_global_tbl(void);
|
|||
void rb_mark_generic_ivar(VALUE);
|
||||
VALUE rb_const_missing(VALUE klass, VALUE name);
|
||||
|
||||
int rb_st_insert_id_and_value(VALUE obj, st_table *tbl, ID key, VALUE value);
|
||||
int rb_st_insert_id_and_value(VALUE obj, ID key, VALUE value);
|
||||
st_table *rb_st_copy(VALUE obj, struct st_table *orig_tbl);
|
||||
|
||||
/* gc.c (export) */
|
||||
|
|
11
variable.c
11
variable.c
|
@ -158,8 +158,7 @@ find_class_path(VALUE klass, ID preferred)
|
|||
if (!RCLASS_IV_TBL(klass)) {
|
||||
RCLASS_IV_TBL(klass) = st_init_numtable();
|
||||
}
|
||||
rb_st_insert_id_and_value(klass, RCLASS_IV_TBL(klass),
|
||||
(st_data_t)classpath, arg.path);
|
||||
rb_st_insert_id_and_value(klass, (st_data_t)classpath, arg.path);
|
||||
|
||||
st_delete(RCLASS_IV_TBL(klass), &tmp, 0);
|
||||
return arg.path;
|
||||
|
@ -1412,7 +1411,7 @@ rb_ivar_set(VALUE obj, ID id, VALUE val)
|
|||
case T_CLASS:
|
||||
case T_MODULE:
|
||||
if (!RCLASS_IV_TBL(obj)) RCLASS_IV_TBL(obj) = st_init_numtable();
|
||||
rb_st_insert_id_and_value(obj, RCLASS_IV_TBL(obj), (st_data_t)id, val);
|
||||
rb_st_insert_id_and_value(obj, (st_data_t)id, val);
|
||||
break;
|
||||
default:
|
||||
generic_ivar_set(obj, id, val);
|
||||
|
@ -2804,8 +2803,7 @@ rb_cvar_set(VALUE klass, ID id, VALUE val)
|
|||
RCLASS_IV_TBL(target) = st_init_numtable();
|
||||
}
|
||||
|
||||
rb_st_insert_id_and_value(target, RCLASS_IV_TBL(target),
|
||||
(st_data_t)id, (st_data_t)val);
|
||||
rb_st_insert_id_and_value(target, (st_data_t)id, (st_data_t)val);
|
||||
}
|
||||
|
||||
VALUE
|
||||
|
@ -3034,8 +3032,9 @@ rb_iv_set(VALUE obj, const char *name, VALUE val)
|
|||
|
||||
/* tbl = xx(obj); tbl[key] = value; */
|
||||
int
|
||||
rb_st_insert_id_and_value(VALUE obj, st_table *tbl, ID key, VALUE value)
|
||||
rb_st_insert_id_and_value(VALUE obj, ID key, VALUE value)
|
||||
{
|
||||
st_table *tbl = RCLASS_IV_TBL(obj);
|
||||
int result = st_insert(tbl, (st_data_t)key, (st_data_t)value);
|
||||
RB_OBJ_WRITTEN(obj, Qundef, value);
|
||||
return result;
|
||||
|
|
Загрузка…
Ссылка в новой задаче