summaryrefslogtreecommitdiffhomepage
path: root/mrbgems/mruby-metaprog
diff options
context:
space:
mode:
authorKOBAYASHI Shuji <[email protected]>2019-06-07 22:02:43 +0900
committerKOBAYASHI Shuji <[email protected]>2019-06-07 22:02:43 +0900
commit4b83fe8b04f61e62d851648c0fe95e8e575181d5 (patch)
tree4cf711150e5be72b2c3d97b20e962dee4a3018c9 /mrbgems/mruby-metaprog
parent2847692d5900745630e1db484884a0bb5fffba7e (diff)
downloadmruby-4b83fe8b04f61e62d851648c0fe95e8e575181d5.tar.gz
mruby-4b83fe8b04f61e62d851648c0fe95e8e575181d5.zip
Remove `Kernel#global_variables` from core
This method is defined in `mruby-metaprog` gem.
Diffstat (limited to 'mrbgems/mruby-metaprog')
-rw-r--r--mrbgems/mruby-metaprog/src/metaprog.c2
-rw-r--r--mrbgems/mruby-metaprog/test/metaprog.rb12
2 files changed, 13 insertions, 1 deletions
diff --git a/mrbgems/mruby-metaprog/src/metaprog.c b/mrbgems/mruby-metaprog/src/metaprog.c
index e57d10d8d..43d27f4dc 100644
--- a/mrbgems/mruby-metaprog/src/metaprog.c
+++ b/mrbgems/mruby-metaprog/src/metaprog.c
@@ -686,7 +686,7 @@ mrb_mruby_metaprog_gem_init(mrb_state* mrb)
struct RClass *krn = mrb->kernel_module;
struct RClass *mod = mrb->module_class;
- mrb_define_method(mrb, krn, "global_variables", mrb_f_global_variables, MRB_ARGS_NONE()); /* 15.3.1.2.4 */
+ mrb_define_method(mrb, krn, "global_variables", mrb_f_global_variables, MRB_ARGS_NONE()); /* 15.3.1.3.14 (15.3.1.2.4) */
mrb_define_method(mrb, krn, "local_variables", mrb_local_variables, MRB_ARGS_NONE()); /* 15.3.1.3.28 */
mrb_define_method(mrb, krn, "singleton_class", mrb_singleton_class, MRB_ARGS_NONE());
diff --git a/mrbgems/mruby-metaprog/test/metaprog.rb b/mrbgems/mruby-metaprog/test/metaprog.rb
index 3aa1d8732..329580abc 100644
--- a/mrbgems/mruby-metaprog/test/metaprog.rb
+++ b/mrbgems/mruby-metaprog/test/metaprog.rb
@@ -99,6 +99,18 @@ assert('Kernel#singleton_methods', '15.3.1.3.45') do
assert_equal singleton_methods.class, Array
end
+assert('Kernel.global_variables', '15.3.1.2.4') do
+ assert_equal Array, Kernel.global_variables.class
+end
+
+assert('Kernel#global_variables', '15.3.1.3.14') do
+ variables = global_variables
+ assert_equal Array, variables.class
+ 1.upto(9) do |i|
+ assert_equal variables.include?(:"$#{i}"), true
+ end
+end
+
assert('Kernel.local_variables', '15.3.1.2.7') do
a, b = 0, 1
a += b