Yukihiro "Matz" Matsumoto
c33ab7c0bb
Merge pull request #4469 from dearblue/double-rounds
...
Fix double rounded by negative index for `String#[]`
2019-05-26 09:17:40 +09:00
dearblue
ecfca8def7
Fix double rounded by negative index
...
- Before patched:
```
$ mruby -e 'p (-12..-1).map { |i| "Hello"[i] }.join'
"HelloHello"
```
- After patched:
```
$ mruby -e 'p (-12..-1).map { |i| "Hello"[i] }.join'
"Hello"
```
2019-05-25 22:43:07 +09:00
Yukihiro "Matz" Matsumoto
f455cb6c40
Merge pull request #4467 from dearblue/naming-mrb_range_beg_len
...
Name the return value of `mrb_range_beg_len()`
2019-05-25 22:25:58 +09:00
dearblue
56e0e1934d
Name the return value of mrb_range_beg_len()
2019-05-25 12:12:21 +09:00
Yukihiro "Matz" Matsumoto
c6f30e8f17
Merge pull request #4466 from shuujii/fix-the-order-of-expected-and-actual-in-mruby-time-test
...
Fix the order of "expected" and "actual" in `mruby-time` test
2019-05-25 00:12:53 +09:00
KOBAYASHI Shuji
240bbc39e1
Fix the order of "expected" and "actual" in mruby-time test
2019-05-24 21:02:22 +09:00
Yukihiro "Matz" Matsumoto
43a26aa958
Merge pull request #4463 from shuujii/freeze-Rational-and-Complex-objects
...
Freeze `Rational` and `Complex` objects
2019-05-23 19:54:45 +09:00
KOBAYASHI Shuji
48903850e9
Freeze Rational and Complex objects
2019-05-23 13:40:49 +09:00
Yukihiro "Matz" Matsumoto
5f4eb87735
Merge pull request #4462 from shuujii/kernel-Rational-requires-numerator
...
`Kernel#Rational` requires numerator
2019-05-22 20:17:11 +09:00
KOBAYASHI Shuji
8513abd404
Kernel#Rational requires numerator
2019-05-22 19:57:35 +09:00
Yukihiro "Matz" Matsumoto
85a2dfc841
Merge pull request #4403 from dearblue/read-irep-from-buf
...
Read irep from buffers
2019-05-22 08:58:50 +09:00
Yukihiro "Matz" Matsumoto
38f8edbdd7
Update ISO section number for some Numeric methods.
2019-05-21 21:12:33 +09:00
Yukihiro "Matz" Matsumoto
c02e63eb77
Use MRB_TT_ISTRUCT for Complex numbers if possible.
2019-05-21 21:08:26 +09:00
Yukihiro "Matz" Matsumoto
fccec8964a
Implements part of Complex class in C.
2019-05-21 21:08:26 +09:00
Yukihiro "Matz" Matsumoto
e941cf06a3
Export mrb_int_value that converts mrb_float to Fixnum.
...
Or `Float` if `mrb_float` value is too big (or too small) to fit in
`mrb_int`. The `_int_` in `mrb_int_value` means `Integral` module, which
represents integer-like values in mruby.
2019-05-21 21:08:26 +09:00
Yukihiro "Matz" Matsumoto
f6e4145ad9
Remove Complex(string) complex generation.
...
It should raise an error.
2019-05-21 21:08:26 +09:00
Yukihiro "Matz" Matsumoto
b7f85b9df9
Should not refer Float class in case of MRB_WITHOUT_FLOAT.
...
This commit removes `Float` from `rational.c`.
2019-05-21 21:08:26 +09:00
Yukihiro "Matz" Matsumoto
5d30309e98
Silence the return value warnings from gcc; ref 237a57b
2019-05-21 21:08:26 +09:00
Yukihiro "Matz" Matsumoto
eca20a16bd
Merge pull request #4461 from shuujii/move-comparision-methods-to-Integral-from-Numeric
...
Move `**`,`/`,`quo`,`div` and comparison methods to Integral from Numeric
2019-05-21 21:07:39 +09:00
KOBAYASHI Shuji
3b46831da8
Move **,/,quo,div and comparison methods to Integral from Numeric
...
Having these methods in Numeric can get in the way of creating subclasses of
Numeric because they only support Fixnum and Float.
2019-05-21 20:43:42 +09:00
Yukihiro "Matz" Matsumoto
24525fd1ae
Merge pull request #4459 from shuujii/revert-part-of-4457
...
Revert part of #4457
2019-05-21 09:34:42 +09:00
KOBAYASHI Shuji
5d6c1794ad
Revert part of #4457
2019-05-21 09:31:06 +09:00
Yukihiro "Matz" Matsumoto
70e754e6da
Merge pull request #4457 from shuujii/change-the-order-of-expected-and-actual-in-mruby-rational-test
...
Change the order of "expected" and "actual" in `mruby-rational` test
2019-05-21 07:56:21 +09:00
Yukihiro "Matz" Matsumoto
a642f73b44
Merge pull request #4458 from shuujii/drop-dependency-from-mruby-rational-to-mruby-object-ext
...
Drop dependency from `mruby-rational` to `mruby-object-ext`
2019-05-21 06:38:04 +09:00
KOBAYASHI Shuji
3db5d7fe3d
Drop dependency from mruby-rational to mruby-object-ext
2019-05-20 18:36:13 +09:00
KOBAYASHI Shuji
97600ded8d
Change the order of "expected" and "actual" in mruby-rational test
2019-05-20 18:24:18 +09:00
Yukihiro "Matz" Matsumoto
8b8bf9f3f6
Add new functions for numerical operation; ref 237a57b
...
New functions:
* mrb_num_plus(mrb, x, y)
* mrb_num_minus(mrb, x, y)
* num_num_mul(mrb, x, y)
2019-05-20 14:59:25 +09:00
Yukihiro "Matz" Matsumoto
05e7544583
Merge pull request #4455 from dearblue/remove-LINE-section
...
Remove "LINE" section reader
2019-05-19 22:29:25 +09:00
Yukihiro "Matz" Matsumoto
e60891e453
Merge pull request #4454 from shuujii/fix-Rational-cmp-Numeric
...
Fix `Rational#<=>(Numeric)`
2019-05-19 22:24:49 +09:00
Yukihiro "Matz" Matsumoto
3e8b19b00e
Merge pull request #4453 from shuujii/move-Kernel-instance_eval-to-BasicObject
...
Move `Kernel#instance_eval` to `BasicObject`
2019-05-19 22:23:57 +09:00
Yukihiro "Matz" Matsumoto
aafaf79fdd
Merge pull request #4452 from shuujii/move-Kernel-equal-to-BasicObject
...
Move `Kernel#equal? to `BasicObject`
2019-05-19 22:23:14 +09:00
Yukihiro "Matz" Matsumoto
8170f6899c
Merge pull request #4450 from shuujii/move-Kernel-instance_exec-to-BasicObject
...
Move `Kernel#instance_exec` to `BasicObject`
2019-05-19 22:21:31 +09:00
Yukihiro "Matz" Matsumoto
8e637bdd83
Should clarify the role of mruby-kernel-ext and mruby-object-ext; close #4449
...
The former should contain function like methods, and the latter should
contain methods shared by all objects.
2019-05-19 22:17:56 +09:00
KOBAYASHI Shuji
a6eb01837b
Fix Rational#<=>(Numeric)
...
Reported by Sergey Ukrainskiy: https://github.com/mruby/mruby/commit/f5fb1307b017fb972c12b4ec4b1866d789b0ca09#r33590698
2019-05-19 13:52:18 +09:00
dearblue
67fc3428cb
Remove "LINE" section reader
...
Because it is not currently output by `mrbc`.
2019-05-19 11:09:25 +09:00
KOBAYASHI Shuji
9c79c28604
Move Kernel#instance_eval to BasicObject
2019-05-18 21:17:47 +09:00
KOBAYASHI Shuji
6fb5979d29
Move Kernel#equal? to BasicObject`
2019-05-18 20:57:54 +09:00
KOBAYASHI Shuji
ef5dd5d31d
Move Kernel#instance_exec to BasicObject
2019-05-18 19:19:52 +09:00
Yukihiro "Matz" Matsumoto
1cdb3ec93c
Merge pull request #4448 from shuujii/move-Object-Rational-Complex-to-Kernel
...
Move `Object#(Rational|Complex)` to `Kernel`
2019-05-18 18:57:47 +09:00
Yukihiro "Matz" Matsumoto
ed70e81264
Merge pull request #4447 from shuujii/move-Numeric-__coerce_step_counter-to-Integral
...
Move `Numeric#__coerce_step_counter` to `Integral`
2019-05-18 18:56:39 +09:00
KOBAYASHI Shuji
6c9c189e4b
Move Object#(Rational|Complex) to Kernel
2019-05-18 18:31:55 +09:00
KOBAYASHI Shuji
4f71e9eebe
Move Numeric#__coerce_step_counter to Integral
...
This method is only used in `Integral#step`
2019-05-18 18:22:56 +09:00
Yukihiro "Matz" Matsumoto
89d2926415
Add ISO section number to Module#===.
2019-05-18 11:48:59 +09:00
Yukihiro "Matz" Matsumoto
bd7328f5e6
Implement Rational._new in C.
2019-05-18 11:23:59 +09:00
Yukihiro "Matz" Matsumoto
e41f15747e
Rename struct RIstruct to struct RIStruct.
2019-05-18 11:10:20 +09:00
Yukihiro "Matz" Matsumoto
ace0d3949b
Support MRB_WITHOUT_FLOAT.
...
I assume there's no realistic usage of `Rational` with
`MRB_WITHOUT_FLOAT`. But just for consistency.
2019-05-18 08:38:45 +09:00
Yukihiro "Matz" Matsumoto
d2a2af2481
Merge pull request #4446 from dearblue/PoC-tuning-profiles
...
(Proof of Concept) mruby tuning profiles [ci skip]
2019-05-17 22:45:45 +09:00
Yukihiro "Matz" Matsumoto
b7bc03aa18
Stop wrapping the filename by double quotes; ref #4440
2019-05-17 22:39:41 +09:00
Yukihiro "Matz" Matsumoto
8d37a3575b
Revert "Add support for CC="gcc --option ..." again"
...
This reverts commit d5c8868346 .
2019-05-17 22:37:45 +09:00
dearblue
a14ae80102
(Proof of Concept) mruby tuning profiles [ci skip]
...
Not only mruby, it is one of the difficult things to adjust the performance vs. memory efficiency of the software.
If the approximate target device is divided and the adjustment value for it is prepared by default, it is a good indicator to do fine adjustment.
This PR divides into four profiles.
***Caution: There is no basis for the definitions in the patch.***
- `MRB_CONSTRAINED_BASELINE_PROFILE` - for microprocessors. Reduce memory consumption.
- `MRB_BASELINE_PROFILE` - Default value of mruby.
- `MRB_MAIN_PROFILE` - For desktop computers. Assume that a huge amount of RAM, 10 MiB or more, is on board.
- `MRB_HIGH_PROFILE` - for servers. Assume that mruby VM has a long life.
As you can see the profile name has been ~~stolen~~ imitated from H.264.
2019-05-17 22:32:01 +09:00