summaryrefslogtreecommitdiff
path: root/ext/-test-/cxxanyargs/cxxanyargs.cpp
diff options
context:
space:
mode:
author卜部昌平 <shyouhei@ruby-lang.org>2020-01-28 17:02:30 +0900
committer卜部昌平 <shyouhei@ruby-lang.org>2020-01-28 17:09:42 +0900
commit3c3eb418f9ce05740e5ca506b9cd5fe5cabc4bb6 (patch)
treedef41d273b86918acf1c0d918f4080819d4dbaad /ext/-test-/cxxanyargs/cxxanyargs.cpp
parent7cf5d547e422134d506d37a179f64be9e98b105c (diff)
improved support for rb_f_notimplement
rb_f_notimplement should be accepted for all possible arities. Test provided for that.
Diffstat (limited to 'ext/-test-/cxxanyargs/cxxanyargs.cpp')
-rw-r--r--ext/-test-/cxxanyargs/cxxanyargs.cpp30
1 files changed, 30 insertions, 0 deletions
diff --git a/ext/-test-/cxxanyargs/cxxanyargs.cpp b/ext/-test-/cxxanyargs/cxxanyargs.cpp
index efe35fa359..eef2387650 100644
--- a/ext/-test-/cxxanyargs/cxxanyargs.cpp
+++ b/ext/-test-/cxxanyargs/cxxanyargs.cpp
@@ -383,6 +383,12 @@ namespace test_rb_define_method {
rb_define_method(self, "ma", (VALUE (*)(...))(ma), -2);
rb_define_method(self, "mv", (VALUE (*)(...))(mv), -1);
+ // rb_f_notimplement
+ rb_define_method(self, "m1", rb_f_notimplement, 1);
+ rb_define_method(self, "m2", rb_f_notimplement, 2);
+ rb_define_method(self, "ma", rb_f_notimplement, -2);
+ rb_define_method(self, "mv", rb_f_notimplement, -1);
+
return self;
}
}
@@ -433,6 +439,12 @@ namespace test_rb_define_module_function {
rb_define_module_function(self, "ma", (VALUE (*)(...))(ma), -2);
rb_define_module_function(self, "mv", (VALUE (*)(...))(mv), -1);
+ // rb_f_notimplement
+ rb_define_module_function(self, "m1", rb_f_notimplement, 1);
+ rb_define_module_function(self, "m2", rb_f_notimplement, 2);
+ rb_define_module_function(self, "ma", rb_f_notimplement, -2);
+ rb_define_module_function(self, "mv", rb_f_notimplement, -1);
+
return self;
}
}
@@ -483,6 +495,12 @@ namespace test_rb_define_singleton_method {
rb_define_singleton_method(self, "ma", (VALUE (*)(...))(ma), -2);
rb_define_singleton_method(self, "mv", (VALUE (*)(...))(mv), -1);
+ // rb_f_notimplement
+ rb_define_singleton_method(self, "m1", rb_f_notimplement, 1);
+ rb_define_singleton_method(self, "m2", rb_f_notimplement, 2);
+ rb_define_singleton_method(self, "ma", rb_f_notimplement, -2);
+ rb_define_singleton_method(self, "mv", rb_f_notimplement, -1);
+
return self;
}
}
@@ -533,6 +551,12 @@ namespace test_rb_define_protected_method {
rb_define_protected_method(self, "ma", (VALUE (*)(...))(ma), -2);
rb_define_protected_method(self, "mv", (VALUE (*)(...))(mv), -1);
+ // rb_f_notimplement
+ rb_define_protected_method(self, "m1", rb_f_notimplement, 1);
+ rb_define_protected_method(self, "m2", rb_f_notimplement, 2);
+ rb_define_protected_method(self, "ma", rb_f_notimplement, -2);
+ rb_define_protected_method(self, "mv", rb_f_notimplement, -1);
+
return self;
}
}
@@ -583,6 +607,12 @@ namespace test_rb_define_private_method {
rb_define_private_method(self, "ma", (VALUE (*)(...))(ma), -2);
rb_define_private_method(self, "mv", (VALUE (*)(...))(mv), -1);
+ // rb_f_notimplement
+ rb_define_private_method(self, "m1", rb_f_notimplement, 1);
+ rb_define_private_method(self, "m2", rb_f_notimplement, 2);
+ rb_define_private_method(self, "ma", rb_f_notimplement, -2);
+ rb_define_private_method(self, "mv", rb_f_notimplement, -1);
+
return self;
}
}