summaryrefslogtreecommitdiff
path: root/ext/json/generator
diff options
context:
space:
mode:
authorKenta Murata <mrkn@mrkn.jp>2020-12-20 12:17:32 +0900
committerKenta Murata <mrkn@mrkn.jp>2020-12-21 22:10:33 +0900
commit98cc15ed1e9193e17fad6b87cccf8f8b5ade7801 (patch)
treeabc25c0a1e0509478e7d86045160897477b22e84 /ext/json/generator
parentd84dd66da065cc40da69df5e042205209411c086 (diff)
[json] Stop using prototype objects
Diffstat (limited to 'ext/json/generator')
-rw-r--r--ext/json/generator/generator.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/ext/json/generator/generator.c b/ext/json/generator/generator.c
index 80d1ca7bf3b..2e802c8ea40 100644
--- a/ext/json/generator/generator.c
+++ b/ext/json/generator/generator.c
@@ -15,8 +15,7 @@ static VALUE mJSON, mExt, mGenerator, cState, mGeneratorMethods, mObject,
#endif
mFloat, mString, mString_Extend,
mTrueClass, mFalseClass, mNilClass, eGeneratorError,
- eNestingError,
- i_SAFE_STATE_PROTOTYPE;
+ eNestingError;
static ID i_to_s, i_to_json, i_new, i_indent, i_space, i_space_before,
i_object_nl, i_array_nl, i_max_nesting, i_allow_nan, i_ascii_only,
@@ -1166,8 +1165,7 @@ static VALUE cState_from_state_s(VALUE self, VALUE opts)
} else if (rb_obj_is_kind_of(opts, rb_cHash)) {
return rb_funcall(self, i_new, 1, opts);
} else {
- VALUE prototype = rb_const_get(mJSON, i_SAFE_STATE_PROTOTYPE);
- return rb_funcall(prototype, i_dup, 0);
+ return rb_class_new_instance(0, NULL, cState);
}
}
@@ -1608,5 +1606,4 @@ void Init_generator(void)
i_encoding = rb_intern("encoding");
i_encode = rb_intern("encode");
#endif
- i_SAFE_STATE_PROTOTYPE = rb_intern("SAFE_STATE_PROTOTYPE");
}