summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/class.c18
-rw-r--r--src/etc.c40
2 files changed, 26 insertions, 32 deletions
diff --git a/src/class.c b/src/class.c
index 37ac751a7..d3a2403f1 100644
--- a/src/class.c
+++ b/src/class.c
@@ -1550,18 +1550,6 @@ mod_define_method(mrb_state *mrb, mrb_value self)
}
static void
-check_cv_name_sym(mrb_state *mrb, mrb_sym id)
-{
- const char *s;
- mrb_int len;
-
- s = mrb_sym2name_len(mrb, id, &len);
- if (len < 3 || !(s[0] == '@' && s[1] == '@')) {
- mrb_name_error(mrb, id, "`%S' is not allowed as a class variable name", mrb_sym2str(mrb, id));
- }
-}
-
-static void
check_cv_name_str(mrb_state *mrb, mrb_value str)
{
const char *s = RSTRING_PTR(str);
@@ -1572,6 +1560,12 @@ check_cv_name_str(mrb_state *mrb, mrb_value str)
}
}
+static void
+check_cv_name_sym(mrb_state *mrb, mrb_sym id)
+{
+ check_cv_name_str(mrb, mrb_sym2str(mrb, id));
+}
+
static mrb_value
get_sym_or_str_arg(mrb_state *mrb)
{
diff --git a/src/etc.c b/src/etc.c
index b5cb9ed01..635052b67 100644
--- a/src/etc.c
+++ b/src/etc.c
@@ -113,34 +113,34 @@ mrb_obj_id(mrb_value obj)
#define MakeID(p) MakeID2(p,tt)
switch (tt) {
- case MRB_TT_FREE:
- case MRB_TT_UNDEF:
+ case MRB_TT_FREE:
+ case MRB_TT_UNDEF:
return MakeID(0); /* not define */
- case MRB_TT_FALSE:
+ case MRB_TT_FALSE:
if (mrb_nil_p(obj))
return MakeID(1);
return MakeID(0);
- case MRB_TT_TRUE:
+ case MRB_TT_TRUE:
return MakeID(1);
- case MRB_TT_SYMBOL:
+ case MRB_TT_SYMBOL:
return MakeID(mrb_symbol(obj));
- case MRB_TT_FIXNUM:
+ case MRB_TT_FIXNUM:
return MakeID2(mrb_float_id((mrb_float)mrb_fixnum(obj)), MRB_TT_FLOAT);
- case MRB_TT_FLOAT:
+ case MRB_TT_FLOAT:
return MakeID(mrb_float_id(mrb_float(obj)));
- case MRB_TT_STRING:
- case MRB_TT_OBJECT:
- case MRB_TT_CLASS:
- case MRB_TT_MODULE:
- case MRB_TT_ICLASS:
- case MRB_TT_SCLASS:
- case MRB_TT_PROC:
- case MRB_TT_ARRAY:
- case MRB_TT_HASH:
- case MRB_TT_RANGE:
- case MRB_TT_EXCEPTION:
- case MRB_TT_FILE:
- case MRB_TT_DATA:
+ case MRB_TT_STRING:
+ case MRB_TT_OBJECT:
+ case MRB_TT_CLASS:
+ case MRB_TT_MODULE:
+ case MRB_TT_ICLASS:
+ case MRB_TT_SCLASS:
+ case MRB_TT_PROC:
+ case MRB_TT_ARRAY:
+ case MRB_TT_HASH:
+ case MRB_TT_RANGE:
+ case MRB_TT_EXCEPTION:
+ case MRB_TT_FILE:
+ case MRB_TT_DATA:
default:
return MakeID(mrb_ptr(obj));
}