Carson McDonald
0d0f3545f8
Change supress to suppress
2013-11-09 07:40:51 -05:00
Yukihiro "Matz" Matsumoto
ec0a94dae6
Merge pull request #1565 from Fleurer/fix1564
...
nextc(): always return an '\n' at end of input
2013-11-08 17:22:59 -08:00
fleuria
fa71403bc5
nextc(): always return an '\n' at end of input
...
fix #1564
2013-11-08 11:40:26 +08:00
Yukihiro "Matz" Matsumoto
f80401de6c
resolved conflicts and updated to latest return value change of mrb_generate_code()
2013-11-05 00:13:01 +09:00
Yukihiro "Matz" Matsumoto
e386760cc7
add Fiber.current
2013-11-04 23:58:32 +09:00
fleuria
a511957ec8
refactor mrb_context_run()
2013-11-03 12:05:25 +08:00
fleuria
d75a907edf
introduce mrb_context_run()
...
currently there are two scnenario to call mrb_run(), the first is
calling a proc, in this case mrb should create a new environment,
discarding all the variables except args, reciever and block.
the second is calling the newly generated irep, like in mirb.
in this case, the variables should be kept after mrb_run().
so we introduce mrb_context_run() to handle this seperately.
2013-11-03 11:32:59 +08:00
Yukihiro "Matz" Matsumoto
8af26752db
remove scope->idx
2013-11-02 23:40:36 +09:00
Yukihiro "Matz" Matsumoto
22f90d9f70
codedump() to take irep structure
2013-11-02 23:26:19 +09:00
Yukihiro "Matz" Matsumoto
0be572df62
change return value from mrb_generate_code()
2013-11-02 23:20:04 +09:00
Yukihiro "Matz" Matsumoto
92825660ea
changed argument type of mrb_ary_modify(); ref #1554
2013-11-01 09:57:20 +09:00
Yukihiro "Matz" Matsumoto
af03812877
add mrb_ary_modify(mrb,a); you have to ensure mrb_value a to be an array; ref #1554
2013-10-31 23:34:08 +09:00
Yukihiro "Matz" Matsumoto
0fe744f919
Merge branch 'master' of github.com:mruby/mruby
2013-10-31 11:55:06 +09:00
Yukihiro "Matz" Matsumoto
a228841668
restore context status to RUNNING on automatic yield at the end of the block; fix #1555
2013-10-31 11:54:57 +09:00
fleuria
c64cae4d2d
fix 3a4c8e2
...
unfortunately the previouse commit is incorrect, which still concate the
keywords, but like this:
method='"end\nb"' (201)
2013-10-30 17:17:13 +08:00
Yukihiro "Matz" Matsumoto
abe6db9454
resolve conflict #1552
2013-10-30 17:28:32 +09:00
Yukihiro "Matz" Matsumoto
ad4ce2ba4e
Merge pull request #1551 from Fleurer/fix1550
...
fix #1550
2013-10-30 01:25:41 -07:00
Yukihiro "Matz" Matsumoto
888ddf1c84
type check class/module in mrb_get_args(); close #1477
2013-10-30 13:24:55 +09:00
h2so5
12e00f9238
implement Class.new with block
2013-10-30 12:52:26 +09:00
Yukihiro "Matz" Matsumoto
f8fea6931c
preserve only arguments on stack; fix #1527
2013-10-30 12:01:18 +09:00
fleuria
3a4c8e2d9f
fix #1550
...
emit a "\n" as the first token for parser instead of taking the
first character from the next file for lexer, to prevent mruby
"concatenate" two keywords between files
it should be regarded as a work around, for it can not resolve
this case:
$ cat a.rb
"
$ cat b.rb
b"
$ bin/mrbc -o- -v a.rb b.rb
mruby - Embeddable Ruby Copyright (c) 2010-2013 mruby
developers
NODE_SCOPE:
NODE_BEGIN:
NODE_STR "
b " len 4
irep 0 nregs=2 nlocals=1 pools=1 syms=0
000 OP_STRING R1 "\n\nb "
001 OP_STOP
thanks @bovi 's idea
2013-10-30 10:34:28 +08:00
h2so5
88758e3630
Uniquify the results of Object#methods
2013-10-27 04:04:06 +09:00
Yukihiro "Matz" Matsumoto
3a668241be
nil/false should not be implicitly converted to integers in mrb_get_args(); close #1529
2013-10-26 17:11:09 +09:00
Yukihiro "Matz" Matsumoto
51213bfc7d
mrb_Integer() should not convert strings to integers
2013-10-26 17:06:50 +09:00
Yukihiro "Matz" Matsumoto
fcebd1243b
Merge pull request #1530 from h2so5/args-explicit-conversion
...
Disable implicit integer conversion in mrb_get_args
2013-10-26 00:47:03 -07:00
fleuria
c647dff1b2
fix #1544
...
We have already reserved that register in codegen()'s case NODE_DEF, but
what we care about is actually the previous register. So what we need is
get that register by cursp() after pop(), then recover the reservation
by push().
2013-10-25 02:48:25 +08:00
fleuria
e648abf1c1
fix #1542
2013-10-23 15:39:52 +08:00
Yukihiro "Matz" Matsumoto
2607970ed9
move some methods to make floats and integers compatible [mruby special]
2013-10-22 16:18:11 +09:00
Yukihiro "Matz" Matsumoto
620f8b2721
implement some Numeric methods in Ruby
2013-10-22 15:59:41 +09:00
Yukihiro "Matz" Matsumoto
3ae0616710
implement Integer#succ in Ruby
2013-10-21 07:42:50 +09:00
Yukihiro "Matz" Matsumoto
9cb58a2252
Fixnum#succ may overflow
2013-10-20 00:43:39 +09:00
Yukihiro "Matz" Matsumoto
9b2f4c4423
move declarations to the beginning of blocks
2013-10-16 08:21:06 +09:00
Carson McDonald
11c4d81539
Set regs to stack on return of const_get calls before use
2013-10-15 07:33:41 -04:00
Yukihiro "Matz" Matsumoto
a7c9a71684
better error position display
2013-10-15 12:49:41 +09:00
Yukihiro "Matz" Matsumoto
8ecbff3f7b
define Module#const_missing
2013-10-15 11:12:22 +09:00
MATSUMOTO Ryosuke
d41425edd4
remove unused value for mrb_gv_remove
2013-10-10 00:29:20 +09:00
Yukihiro "Matz" Matsumoto
400ccecf0a
add mrb_gv_remove(); untested
2013-10-10 12:12:29 +09:00
Yukihiro "Matz" Matsumoto
9295f6ae49
simplify stack_clear()
2013-10-05 18:50:55 +09:00
h2so5
41de3d83e5
Disable implicit integer conversion in mrb_get_args
2013-10-05 10:56:27 +09:00
Daniel Bovensiepen
302e20333b
Improve Grammar of Documentation
2013-10-02 00:50:55 +08:00
fleuria
af5bec1fbc
fix #1519
...
the 128th element in an array literal would trigger a corner case on
splat mode checking, in which mruby will splat an that value into its
parent array. the issue was masked by the fact of ary_concat() also
accept non-array value:
1.9.3p286 :002> a = 1
1.9.3p286 :003> [*a]
=> [1]
the expected behaviour should be OP_ARYPUSH the 128th element, instead of
splat it by OP_ARYCAT.
2013-10-01 21:32:16 +08:00
Atsushi_Morimoto
86f0912bcc
fix build error when ENABLE_DEBUG is defined
2013-09-26 18:36:08 +09:00
Yukihiro "Matz" Matsumoto
11b0dda641
Merge pull request #1509 from FUKUZAWA-Tadashi/heredoc-bugfix
...
fix bugs on Heredocument
2013-09-25 18:02:00 -07:00
Yuichi Nishiwaki
0e4a7b2a03
eliminate use of traditional intern API (mrb_intern()) completely
2013-09-23 19:36:50 -07:00
FUKUZAWA-Tadashi
8d34e00102
fix bugs on Heredocument
...
- heredoc in array literal
- heredoc in args
- heredoc in expression expand
2013-09-22 18:14:40 +09:00
Yukihiro "Matz" Matsumoto
eeac4be4ce
Merge pull request #1507 from ktaobo/yield-self
...
Use self for the given proc in mrb_yield
2013-09-21 04:16:28 -07:00
Yukihiro "Matz" Matsumoto
3995e7ff8f
rename voidp to cptr
2013-09-21 17:28:47 +09:00
Yukihiro "Matz" Matsumoto
97ce25fbd0
index to mrb_digitmap[] should always be positive
2013-09-21 17:15:58 +09:00
Keita Obo
862517d540
Use self for the given proc
2013-09-20 17:40:55 +09:00
Yukihiro "Matz" Matsumoto
d74887f582
incomplete renaming node->filename -> node->filename_index
2013-09-20 15:41:59 +09:00