aboutsummaryrefslogtreecommitdiffstats
path: root/spec/ruby/optional/capi/ext/symbol_spec.c
diff options
context:
space:
mode:
Diffstat (limited to 'spec/ruby/optional/capi/ext/symbol_spec.c')
-rw-r--r--spec/ruby/optional/capi/ext/symbol_spec.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/spec/ruby/optional/capi/ext/symbol_spec.c b/spec/ruby/optional/capi/ext/symbol_spec.c
index 27732ae58f..d2ca62d81e 100644
--- a/spec/ruby/optional/capi/ext/symbol_spec.c
+++ b/spec/ruby/optional/capi/ext/symbol_spec.c
@@ -7,6 +7,10 @@
extern "C" {
#endif
+VALUE symbol_spec_SYMBOL_P(VALUE self, VALUE obj) {
+ return SYMBOL_P(obj) ? Qtrue : Qfalse;
+}
+
VALUE symbol_spec_rb_intern(VALUE self, VALUE string) {
return ID2SYM(rb_intern(RSTRING_PTR(string)));
}
@@ -73,6 +77,7 @@ VALUE symbol_spec_rb_sym2str(VALUE self, VALUE sym) {
void Init_symbol_spec(void) {
VALUE cls = rb_define_class("CApiSymbolSpecs", rb_cObject);
+ rb_define_method(cls, "SYMBOL_P", symbol_spec_SYMBOL_P, 1);
rb_define_method(cls, "rb_intern", symbol_spec_rb_intern, 1);
rb_define_method(cls, "rb_intern2", symbol_spec_rb_intern2, 2);
rb_define_method(cls, "rb_intern_const", symbol_spec_rb_intern_const, 1);