mirror of
https://github.com/mruby/mruby
synced 2026-06-08 16:11:16 +00:00
object.h: remove MRB_SET_FROZEN_FLAG/MRB_UNSET_FROZEN_FLAG macros
Simple `o->frozen = 1/0` now works.
This commit is contained in:
+1
-1
@@ -2584,7 +2584,7 @@ static mrb_value
|
||||
mrb_mod_dup(mrb_state *mrb, mrb_value self)
|
||||
{
|
||||
mrb_value mod = mrb_obj_clone(mrb, self);
|
||||
MRB_UNSET_FROZEN_FLAG(mrb_obj_ptr(mod));
|
||||
mrb_obj_ptr(mod)->frozen = 0;
|
||||
return mod;
|
||||
}
|
||||
|
||||
|
||||
@@ -154,7 +154,7 @@ mrb_word_boxing_float_value(mrb_state *mrb, mrb_float f)
|
||||
#ifdef MRB_WORDBOX_NO_FLOAT_TRUNCATE
|
||||
v.p = mrb_obj_alloc(mrb, MRB_TT_FLOAT, mrb->float_class);
|
||||
v.fp->f = f;
|
||||
MRB_SET_FROZEN_FLAG(v.bp);
|
||||
v.bp->frozen = 1;
|
||||
#elif defined(MRB_64BIT) && defined(MRB_USE_FLOAT32)
|
||||
v.w = 0;
|
||||
v.f = f;
|
||||
@@ -204,7 +204,7 @@ mrb_boxing_int_value(mrb_state *mrb, mrb_int n)
|
||||
mrb_value v;
|
||||
struct RInteger *p = (struct RInteger*)mrb_obj_alloc(mrb, MRB_TT_INTEGER, mrb->integer_class);
|
||||
p->i = n;
|
||||
MRB_SET_FROZEN_FLAG((struct RBasic*)p);
|
||||
p->frozen = 1;
|
||||
SET_OBJ_VALUE(v, p);
|
||||
return v;
|
||||
}
|
||||
|
||||
+1
-1
@@ -989,7 +989,7 @@ h_key_for(mrb_state *mrb, mrb_value key)
|
||||
{
|
||||
if (mrb_string_p(key) && !mrb_frozen_p(mrb_str_ptr(key))) {
|
||||
key = mrb_str_dup(mrb, key);
|
||||
MRB_SET_FROZEN_FLAG(mrb_str_ptr(key));
|
||||
mrb_str_ptr(key)->frozen = 1;
|
||||
}
|
||||
return key;
|
||||
}
|
||||
|
||||
+2
-2
@@ -266,8 +266,8 @@ mrb_obj_freeze(mrb_state *mrb, mrb_value self)
|
||||
if (!mrb_immediate_p(self)) {
|
||||
struct RBasic *b = mrb_basic_ptr(self);
|
||||
if (!mrb_frozen_p(b)) {
|
||||
MRB_SET_FROZEN_FLAG(b);
|
||||
if (b->c->tt == MRB_TT_SCLASS) MRB_SET_FROZEN_FLAG(b->c);
|
||||
b->frozen = 1;
|
||||
if (b->c->tt == MRB_TT_SCLASS) b->c->frozen = 1;
|
||||
}
|
||||
}
|
||||
return self;
|
||||
|
||||
Reference in New Issue
Block a user