1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
Commit graph

19 commits

Author SHA1 Message Date
naruse
2eadff346a * iseq.c (rb_iseq_defined_string): the index of defined_strings must
be the value of type - 1.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37027 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-24 23:17:59 +00:00
naruse
418bbce88a use assert_predicate for unary operator
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37026 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-24 12:10:51 +00:00
nobu
2314b80d4c Feature #7035
* compile.c (defined_expr), insns.def (defined): share single frozen
  strings.  [EXPERIMENTAL] [ruby-core:47558][Feature #7035]
* iseq.c (rb_iseq_defined_string): make expression strings.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37025 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-24 08:36:53 +00:00
nobu
cc48423ead insns.def: use klass in cfp
* insns.def (defined): now should use klass in the current control
  frame to search superclass, not me->klass.  reported by naruse.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36637 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-06 02:34:36 +00:00
nobu
35784d1019 defined: me in cfp
* insns.def (defined): use method entry and id in cfp for proper
  superclass, since klass in iseq is shared by dynamically defined
  methods from the same block.  [ruby-core:45831][Bug #6644]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36369 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-11 20:11:45 +00:00
nobu
cd339692ef * compile.c (defined_expr): guard the whole expression.
[ruby-dev:45021][Bug#5786]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34555 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-11 03:04:23 +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
nobu
ab69aba3ec * test/ruby/test_defined.rb (TestDefined#test_autoloaded_noload):
autoload file should no be loaded.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31171 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-03-24 14:41:17 +00:00
nobu
d3326ddf11 * vm_insnhelper.c (vm_get_ev_const): should not autoload in
defined? mode.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31170 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-03-24 14:06:31 +00:00
nobu
0e3822c1e2 * variable.c (rb_const_defined_0): fix autoloading base.
[ruby-core:35509]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31169 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-03-24 14:05:45 +00:00
nobu
e6a4a8018d * test/ruby/test_defined.rb (TestDefined#test_defined): get rid of
ruby-mode hilighting bug.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31168 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-03-24 14:03:45 +00:00
mame
45c2671e37 * test/ruby/test_bignum.rb, test/ruby/test_class.rb,
test/ruby/test_defined.rb, test/ruby/test_hash.rb,
  test/ruby/test_primitive.rb, test/ruby/test_variable.rb: add some
  tests (for coverage).

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26370 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-21 16:08:40 +00:00
ko1
b0986a8f82 * compile.c, insns.def: change return value of "defined?"
for $&, $1, ... .  If such variables are defined,
  return "global-variable".
* test/ruby/test_defined.rb: add tests.
* bootstraptest/test_syntax.rb: fix a test.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14031 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-27 04:43:54 +00:00
matz
050a10c607 * compile.c (defined_expr): defined(method(x)) dumped core. a
patch from Yusuke ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:32335]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13998 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-23 01:46:44 +00:00
nahi
994dfc0ae6 * test/*: should not depend on $KCODE.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5764 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-18 13:08:08 +00:00
nobu
83740fa4bd * variable.c (rb_const_defined_0): look up constants in Object as
well.  [ruby-dev:21458]

* test/ruby/test_defined.rb (TestDefined::test_defined): test for
  constants.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4649 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-02 03:00:23 +00:00
nobu
44785befea * lib/optparse.rb (OptionParser#order, #permute, #parse): allow an
array as argument.

* test/ruby/test_*.rb: moved invariants to left side in
  assert_equal, and use assert_nil, assert_raises and so on.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4516 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-05 15:15:43 +00:00
nahi
65264eadbd * test/ruby/test_*.rb: replace 'assert(a == b)' with assert_equal(a, b)'
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4512 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-05 11:28:27 +00:00
nahi
aaf5d9c03c * test/ruby: tests for ruby itself.
* test/ruby/test_*.rb: split sample/test.rb into 28 test/unit testcases.  some
  tests could not be translates...  search '!!' mark to see it.

* test/csv/test_csv.rb: should require 'csv', not '../lib/csv'.  test runner
  should set load path correctly.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4498 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-09-04 16:18:59 +00:00