nobu
bf1a04b191
* test/ruby/test_module.rb (TestModule#test_mix_const): test for
...
constant mix.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31918 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-04 02:32:39 +00:00
nobu
40930b7144
* class.c (check_mix_method_i, do_mix_method_i): not mix methods
...
renamed as nil.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31917 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-04 02:30:59 +00:00
nobu
604fe33b44
* class.c (rb_mix_module): implement Module#mix.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31873 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-31 16:16:06 +00:00
nobu
3a47cf3395
* remove trailing spaces.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31573 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-15 11:55:52 +00:00
shugo
7487298584
* vm_insnhelper.c (vm_get_ev_const): should ignore crefs with
...
the NODE_FL_CREF_PUSHED_BY_EVAL flag.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31222 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-03-31 09:07:42 +00:00
shugo
4273aa8e72
* vm_insnhelper.c (vm_get_ev_const): search root cref properly.
...
[ruby-dev:43365]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31221 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-03-31 07:52:40 +00:00
shugo
e3d7e34e7e
* eval.c (rb_mod_s_constants): should ignore crefs with
...
the NODE_FL_CREF_PUSHED_BY_EVAL flag.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31219 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-03-31 05:54:34 +00:00
shugo
3b20c21880
* vm_insnhelper.h (COPY_CREF): should copy
...
the NODE_FL_CREF_PUSHED_BY_EVAL flag to hide constants from
methods defined by class_eval. [ruby-dev:43365]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31215 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-03-30 05:38:50 +00:00
mame
5b74e4f09e
* vm_insnhelper.c (vm_get_ev_const): no-scope reference to toplevel
...
private constant has been prohibited incorrectly.
* test/ruby/test_module.rb (test_toplevel_private_constant): add a
test for above.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30718 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-29 02:01:19 +00:00
mame
b511e1bfbe
* variable.c (rb_mod_const_of, sv_i): Module#constant should exclude
...
private constants. see [ruby-core:32912].
* test/ruby/test_module.rb (test_constants_with_private_constant): add
a test for above.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30716 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-28 17:57:48 +00:00
mame
b1e829fb30
* variable.c (rb_const_set): const_set shoud preserve constant
...
visibility. see [ruby-core:32912].
* test/ruby/test_module.rb: add a test for above.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30715 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-28 17:57:42 +00:00
mame
a2ec8666cf
* compile.c (NODE_CLASS, NODE_MODULE), insns.def (defineclass): raise
...
an exception when "class Foo::Bar" is evaluated and Foo::Bar is
private. To implement this, define_type of "defineclass" is added
so that the instruction can distinguish whether the class definition
is scoped (class Foo::Bar) or not (class Bar).
* test/ruby/test_class.rb (test_redefine_private_class),
test/ruby/test_module.rb
(test_define_module_under_private_constant): add tests for above.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30714 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-01-28 17:57:34 +00:00
mame
b88c9aa1fe
* object.c (Init_Object), constant.h, variable.c
...
(rb_mod_private_constant, rb_mod_public_constant,
set_const_visibility, rb_const_get_0): add Module#public_constant
and private_constant. [ruby-dev:39685][ruby-core:32698]
* test/ruby/test_module.rb: add tests for above.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29603 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-26 17:27:44 +00:00
nobu
98ac9b8667
* vm.c (vm_define_method): defined method is run with the default
...
public visibility regardless the visibility context of definition.
[ruby-core:30638]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29578 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-24 05:11:26 +00:00
nobu
8f4c474bd3
* test/ruby/test_module.rb (test_attr_inherited_visibility): more discussion needed.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28521 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-07-02 08:40:51 +00:00
nobu
d65d2384a6
* test/ruby/test_module.rb (test_attr_inherited_visibility): see [ruby-core:30638].
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28299 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-06-12 07:56:23 +00:00
nobu
99058e83be
* test/ruby/test_module.rb (test_uninitialized_toplevel_constant): test for [ruby-dev:40951].
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28298 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-06-12 04:06:34 +00:00
nobu
e1cc514073
* test/ruby: fixed nonsense assertions.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27544 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-29 05:33:43 +00:00
shyouhei
d894e1d930
instance_methods should not special-case singleton classes, fixes #2993
...
Signed-off-by: URABE, Shyouhei <shyouhei@ruby-lang.org>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27085 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-29 05:59:46 +00:00
mame
0f078cbfc4
* test/ruby/test_dir.rb: get rid of debug print.
...
* test/ruby/test_module.rb: fixed to make test-all work.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26381 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-22 15:24:22 +00:00
mame
bebd7e4511
* test/ruby/test_array.rb: add a test for Array#rotate, rotate!.
...
* test/ruby/test_dir.rb, test/ruby/test_fnmatch.rb: add some tests
(for coverage of dir.c).
* test/ruby/test_enum.rb: add a test for Enumerable#minmax.
* test/ruby/test_enumerator.rb: add some tests for Enumerator#inspect,
Enumerator::Generator and Yielder.
* test/ruby/test_env.rb: add a test for ENV#index.
* test/ruby/test_exception.rb: add some tests (for coverage of
error.c).
* test/ruby/test_hash.rb: add a test for recursive check.
* test/ruby/test_integer.rb: add a test for number of argument of
Integer.
* test/ruby/test_method.rb: add a test for define_method.
* test/ruby/test_module.rb: add a test for constant of included
module.
* test/ruby/test_proc.rb: add a test for parameters with cfunc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26379 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-22 15:03:32 +00:00
shugo
9071538179
* vm_eval.c (yield_under): yields self the same as 1.8.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26062 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-12-10 08:24:11 +00:00
shugo
4cec4edd0b
fixed tests.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25990 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-12-04 07:09:21 +00:00
shugo
7dbfe89630
* compile.c (compile_cpath, iseq_compile_each): reverted
...
constant/class variable lookup in instance_eval etc. to the
behavior of 1.8.
* eval.c (rb_mod_nesting): ditto.
* insns.def (putspecialobject, defineclass): ditto.
* node.h (NODE_FL_CREF_PUSHED_BY_EVAL): ditto.
* vm_core.h (VM_SPECIAL_OBJECT_CONST_BASE): ditto.
* vm_eval.c (yield_under, eval_under): ditto.
* vm_insnhelper.c (vm_cref_push, vm_get_const_base,
vm_get_ev_const, vm_get_cvar_base): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25984 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-12-03 18:25:57 +00:00
shugo
3dc8a69df7
* vm_insnhelper.c (vm_call_method): protected singleton methods of
...
an object should not be able to called from other instances of the
class of the object. [ruby-core:26761]
* vm_eval.c (rb_method_call_status): ditto.
* test/ruby/test_module.rb (test_protected_singleton_method): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25796 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-16 07:01:44 +00:00
nobu
9603cd2f62
* vm_method.c (rb_add_method_def): no redefinition warning on
...
undef.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25206 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-10-03 12:19:19 +00:00
nobu
a71d47a380
* vm_method.c (rb_add_method_def): show the location where
...
overwritten method was defined. [ruby-dev:39400]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25169 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-30 04:15:46 +00:00
nobu
811c2d5100
* test/ruby/test_{class,module}.rb (test_method_redefinition): include
...
warned line number.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25151 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-29 06:59:42 +00:00
nobu
e6fb96e691
* test/ruby/test_{class,module}.rb (test_method_redefinition): refined.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25150 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-29 06:26:46 +00:00
nobu
f5654b4dfc
* test/ruby/test_module.rb: suppress warnings.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25149 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-29 05:47:21 +00:00
nobu
efa4ed8cce
* vm_method.c (rb_alias): hooks are called from rb_add_method_def.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24868 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-12 15:21:03 +00:00
nobu
d7feab06cc
* vm_method.c (rb_add_method, rb_add_method_me): call method added
...
hook after definition. [ruby-core:25536]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24867 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-12 15:03:02 +00:00
mame
22acf29509
* test/ruby/test_module.rb (test_ancestors, test_included_modules):
...
ignore rake mixins.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24331 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-30 15:57:06 +00:00
nobu
b8b083dbd5
* insns.def (defineclass): preserve encoding of class/module
...
names. [ruby-core:24600]
* variable.c (rb_set_class_path_string): set class path with a
string value.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24321 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-30 07:45:42 +00:00
nobu
00d61f1fe5
* vm_insnhelper.c (vm_call_method): __send__ can call protected
...
methods. [ruby-core:24500]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24280 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-26 09:30:08 +00:00
matz
7a5d48f6ab
* test/ruby/test_module.rb (TestModule#test_alias): warning
...
message updated.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24250 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-22 18:21:32 +00:00
matz
ed86848563
* test/ruby/test_module.rb (TestModule#test_undef): adjust to
...
message change.
* test/ruby/test_object.rb (TestObject#test_redefine_method_which_may_case_serious_problem): ditto.
* test/ruby/test_object.rb (TestObject#test_remove_method): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23968 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-06 00:15:29 +00:00
nobu
287a34ae0d
* {ext,lib,test}/**/*.rb: removed trailing spaces.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22784 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-06 03:56:38 +00:00
mame
270f2f15be
* test/ruby/test_module.rb (test_remove_class_variable): add a test
...
for Class#remove_class_variable.
* test/ruby/test_object.rb (test_remove_instance_variable): add a test
for Object#remove_instance_variable.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19728 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-09 13:16:07 +00:00
matz
5e9cfca2d4
* test/ruby/test_module.rb (TestModule#test_mod_constants): should
...
not depend on global Module constants.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19699 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-06 03:49:17 +00:00
matz
f4d37a3ff4
* test/ruby/test_module.rb (TestModule#_wrap_assertion): add
...
definition. is this really needed?
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19698 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-06 03:46:11 +00:00
shugo
f433d710d0
* object.c (rb_obj_untrusted): new method Object#untrusted?.
...
(rb_obj_untrust): new method Object#untrust.
(rb_obj_trust): new method Object#trust.
* array.c, debug.c, time.c, include/ruby/ruby.h, re.c, variable.c,
string.c, io.c, dir.c, vm_method.c, struct.c, class.c, hash.c,
ruby.c, marshal.c: fixes for Object#untrusted?.
* test/ruby/test_module.rb, test/ruby/test_array.rb,
test/ruby/test_object.rb, test/ruby/test_string.rb,
test/ruby/test_marshal.rb, test/ruby/test_hash.rb: added tests for
Object#untrusted?.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18568 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-13 07:25:05 +00:00
mame
eafe85f603
* test/ruby/envutil.rb (Test::Unit::Assertions#assert_in_out_err): new
...
method.
* test/ruby/test_argf.rb: use assert_in_out_err instead of
EnvUtil.rubyexec.
* test/ruby/test_module.rb: ditto.
* test/ruby/test_require.rb: ditto.
* test/ruby/test_objectspace.rb: ditto.
* test/ruby/test_object.rb: ditto.
* test/ruby/test_string.rb: ditto.
* test/ruby/test_method.rb: ditto.
* test/ruby/test_variable.rb: ditto.
* test/ruby/test_io.rb: ditto.
* test/ruby/test_rubyoptions.rb: ditto.
* test/ruby/test_exception.rb: ditto.
* test/ruby/test_class.rb: ditto.
* test/ruby/test_thread.rb: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18082 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-15 15:26:04 +00:00
mame
5c669c26c5
* test/ruby/test_modules.rb (remove_json_mixins): change judgment
...
condition.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16581 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-24 19:31:30 +00:00
mame
87665465cd
* test/ruby/test_modules.rb (test_ancestors, test_included_modules):
...
ignore json mixins.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16580 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-24 18:55:44 +00:00
mame
2c8dd794e9
* test/ruby/test_require.rb: new tests for library requiring, to
...
achieve over 90% test coverage of dln.c.
* test/ruby/test_class.rb: add tests to achieve over 90% test coverage
of class.c.
* test/ruby/test_module.rb: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16510 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-21 15:31:15 +00:00
nobu
03ed3bde9a
* test/ruby/test_module.rb (assert_method_defined?): added.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16436 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-16 08:08:06 +00:00
mame
f09f597422
* test/ruby/test_object.rb: new tests to achieve over 90% test
...
coverage of object.c, eval.c and eval_method.c.
* test/ruby/test_module.rb: ditto.
* test/ruby/test_trace.rb: ditto.
* test/ruby/test_integer.rb: ditto.
* test/ruby/test_float.rb: ditto.
* test/ruby/test_method.rb: ditto.
* test/ruby/test_variable.rb: ditto.
* test/ruby/test_eval.rb: ditto.
* test/ruby/test_exception.rb: ditto.
* test/ruby/test_class.rb: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16418 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-14 12:52:17 +00:00
ko1
cff97cc9f0
* test/ruby/test_module.rb: fix to use Symbol instead of String
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11666 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-08 13:24:11 +00:00
ko1
a3e1b1ce7e
* Merge YARV
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11439 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-12-31 15:02:22 +00:00