Commit Graph

4581 Commits

Author SHA1 Message Date
Yukihiro "Matz" Matsumoto 28ab106292 Hash#replace to preserve order; close #2001 2014-04-04 10:50:42 +09:00
Yukihiro "Matz" Matsumoto 2d61698799 should not access proc->body.irep if proc is PROC_CFUNC; close #1999 2014-04-04 01:47:47 +09:00
Yukihiro "Matz" Matsumoto 19c3c957fc add assertion before casting 2014-04-03 20:23:39 +09:00
Yukihiro "Matz" Matsumoto 653ddd6d3e downto, upto, step to return Enumerator 2014-04-03 20:19:54 +09:00
Yukihiro "Matz" Matsumoto 83a1e7122b Merge branch 'master' of github.com:mruby/mruby 2014-04-03 10:14:55 +09:00
Yukihiro "Matz" Matsumoto 5be2bfb523 too much peephole optimization; close #1992 2014-04-03 10:14:38 +09:00
ksss 8d15ef2e89 Use bool macro KHASH_DEFINE and KHASH_DECLARE 2014-04-02 13:38:43 +00:00
Yukihiro "Matz" Matsumoto b4043256d0 implement part of Array#<=> in C 2014-04-02 18:04:09 +09:00
Yukihiro "Matz" Matsumoto 94effc6a37 implement Array comparisons by Ruby 2014-04-02 17:33:25 +09:00
Yukihiro "Matz" Matsumoto 9b45189626 remove some empty lines 2014-04-02 10:42:56 +09:00
Yukihiro "Matz" Matsumoto 911764e8e2 handle CR before LF; close #1781 2014-04-02 03:22:06 +09:00
Yukihiro "Matz" Matsumoto 3b339ed47f simpler escape handling in ?c strings 2014-04-02 02:21:57 +09:00
Yukihiro "Matz" Matsumoto 5bcaa749fc fix else indentation style 2014-04-02 02:16:09 +09:00
Yukihiro "Matz" Matsumoto 164dcd8b33 Hash#keys to update memory region directly 2014-04-01 15:19:53 +09:00
Yukihiro "Matz" Matsumoto 312e11da39 should adjust hash value order at deletion 2014-04-01 15:19:11 +09:00
Yukihiro "Matz" Matsumoto 1690fc4c99 implement Hash#== and eql? in Ruby 2014-04-01 14:56:23 +09:00
Yukihiro "Matz" Matsumoto 8b141b07b6 function expansion in hash.c 2014-04-01 14:37:10 +09:00
Yukihiro "Matz" Matsumoto d9feed6703 move Array#inspect implementation to mrblib/array.rb 2014-04-01 14:31:39 +09:00
Yukihiro "Matz" Matsumoto cf58d0d3e9 move Hash#inspect implementation to mrblib/hash.rb 2014-04-01 14:21:40 +09:00
Yukihiro "Matz" Matsumoto f05069fd1a Hash to preserve order as Ruby1.9 does 2014-04-01 14:18:21 +09:00
take_cheeze 755ded2ef0 Use MRB_ENV_STACK_SHARED_P to check cioff field of REnv. 2014-04-01 01:53:28 +09:00
take_cheeze b38eb72d82 Add macro MRB_ENV_UNSHARE_STACK instead of assigning -1 directly. 2014-04-01 01:35:40 +09:00
take_cheeze 80534b6d14 Use MRB_ENV_STACK_LEN instead of accessing flags directly to get REnv's stack length. 2014-04-01 01:13:39 +09:00
Yukihiro "Matz" Matsumoto d7c29322b8 singleton class needs to set __outer__; fixed #1983 2014-03-31 14:12:47 +09:00
Yukihiro "Matz" Matsumoto 4c2969910f Hash function to avoid funcalls if possible 2014-03-31 13:44:35 +09:00
Yukihiro "Matz" Matsumoto 49d18ca848 Kernel#send should preserve nregs in callinfo; close #1970 2014-03-29 00:21:52 +09:00
ksss f0dd4cb673 Implement Kernel#define_singleton_method 2014-03-28 18:16:28 +09:00
take_cheeze 2239350348 Add test for backquote.
* Implement code generation of NODE_DXSTR.
* Fix NOVAL NODE_XSTR.
2014-03-28 13:02:52 +09:00
Yukihiro "Matz" Matsumoto 514cafe6c3 do not use "to_f" to retrieve floats in mrb_get_args(); close #1965 2014-03-28 11:04:15 +09:00
Yukihiro "Matz" Matsumoto b8e434a5e6 initialize ci->target_class in mrb_toplevel_run; ref #1942 close mattn/mruby-require#20 2014-03-27 23:51:08 +09:00
ksss 65ace4e027 Implement Kernel#__method__ 2014-03-27 18:25:47 +09:00
Yukihiro "Matz" Matsumoto 70718d5935 an int literal may have multiple underscores inside 2014-03-27 13:33:14 +09:00
Yukihiro "Matz" Matsumoto 9434506035 allow underscores in integer literals; close #1960 2014-03-27 12:33:32 +09:00
Daniel Bovensiepen 7ae495cc9c Adapt for Float and Integer 2014-03-27 01:48:07 +08:00
Daniel Bovensiepen c96339769d Adapt TypeError Message for String to Integer Conversion.
MRI:
"str" * "3"
=> TypeError: no implicit conversion of String into Integer

mruby:
"str" * "3"
=> TypeError: String can't be coerced into int
2014-03-27 01:41:31 +08:00
Yukihiro "Matz" Matsumoto 28871b9d1f should not over process ensure clauses; close #1949 2014-03-26 17:49:27 +09:00
Yukihiro "Matz" Matsumoto 306b1d3c51 Merge pull request #1948 from monaka/pr-remove-unused-null-check
Remove redundant NULL checks.
2014-03-26 13:32:18 +09:00
Masaki Muranaka dcff9012e3 Remove redundant NULL checks.
mrb_malloc causes an exception when memory was empty.
2014-03-26 11:21:20 +09:00
Yukihiro "Matz" Matsumoto 79ba1ed137 Merge branch 'master' of github.com:mruby/mruby 2014-03-26 01:09:17 +09:00
Yukihiro "Matz" Matsumoto bfd2a539ed add new function mrb_toplevel_run to prevent running through C function boudaries on exceptions; close #1942 2014-03-26 01:09:09 +09:00
ksss c82517862a Fix unnecessary string macro 2014-03-25 23:03:47 +09:00
Yukihiro "Matz" Matsumoto 1e73181da9 Merge pull request #1937 from cubicdaiya/issues/mrb_int
Use mrb_int instead of int
2014-03-25 11:51:23 +09:00
Yukihiro "Matz" Matsumoto a043eb63ca Merge branch 'master' of github.com:mruby/mruby 2014-03-25 11:50:42 +09:00
Yukihiro "Matz" Matsumoto b4dd3564ef REnv uses obj->c as env link; no super 2014-03-25 11:50:11 +09:00
cubicdaiya 6e648d6382 Use mrb_int instead of int 2014-03-25 11:36:47 +09:00
ksss ebf6da7e30 mrb_str_pool add string capa 2014-03-25 08:44:59 +09:00
ksss e6e462c07d src/string.c RESIZE_CAPA use safe name variables
This has a possibility of naming conflicts
2014-03-24 23:05:44 +09:00
chasonr 509cbc51eb Implement \u notation for strings and regexes.
This change adds the \u notation for double quoted strings and regular
expressions.  It does not implement the \u notation for character literals.
Both the \uNNNN and \u{NNNN} notations are supported.

\uNNNN is implemented by emitting equivalent UTF-8; that is, "\u4000" is
equivalent to "\xE4\x80\x80".

Unlike CRuby, the \u{NNNN} notation allows only one character per pair of
braces; I see no way to lift this restriction without remodeling the parser.
2014-03-23 21:46:00 -04:00
ksss b0f10b5c3d mrb_str_pool use embed-string 2014-03-23 08:04:54 +00:00
Yukihiro "Matz" Matsumoto 539d9cb855 need not to add assertion in STR_SET_LEN() where n is mrb_int 2014-03-22 22:33:09 +09:00