summaryrefslogtreecommitdiffhomepage
path: root/mrbgems
AgeCommit message (Collapse)Author
2017-08-18Rename `mrb_str_concat2` to `mrb_str_concat_m`.Yukihiro "Matz" Matsumoto
According to the naming convention a function that implements a method should be suffixed by `_m`.
2017-08-17Check whether internal khash is initialized in Hash#compact!Clayton Smith
2017-08-12Reduce integer type mismatch warnings in VC.Yukihiro "Matz" Matsumoto
2017-08-11`scan_hex` may be used to parse both unicode and hex escape.Yukihiro "Matz" Matsumoto
The error checks for both usage should be separated; ref #3774
2017-08-11Fixed a wrong condition in `scan_hex`; fix #3774Yukihiro "Matz" Matsumoto
2017-08-11Should not include `float.h` here.Yukihiro "Matz" Matsumoto
2017-08-11Remove unnecessary inline function `ary_elt`.Yukihiro "Matz" Matsumoto
And the function does not conform the naming convention anyway.
2017-08-11Check method existence in `to_enum'; ref #3773Yukihiro "Matz" Matsumoto
2017-08-10VM stack may be reallocated during `mrb_hash_get`; fix #3771Yukihiro "Matz" Matsumoto
2017-08-09Replaced tabs with spacesChristopher Aue
2017-08-09Implement `Hash#compact!` in C; ref #3769Yukihiro "Matz" Matsumoto
2017-08-09add method(compact, compact!) and test of Hash to mruby-hash-extvvakame
2017-08-09Support `break` within rescue clauses; fix #3767 ref #3721Yukihiro "Matz" Matsumoto
2017-08-05Change return type of `scan_oct` from `int` to `int32_t`.Yukihiro "Matz" Matsumoto
2017-08-05Left shift of signed integers is undefined behavior in C; fix #3762Yukihiro "Matz" Matsumoto
2017-08-04Fixed a invalid source path name on mruby debugger.Hiroshi Mimaki
2017-08-01Better class name management.Yukihiro "Matz" Matsumoto
The change removes several internal instance variables used by class name management. The variables `__classid__` and `__classpath__` are no longer available. `__outer__` is used only for unnamed outer classes/modules (and will be removed after they are named). [Important note] Along with this change we removed several public functions. - mrb_class_outer_module() - mrb_class_sym() We believe no one have used those functions, but if you do, please ask us for the workaround.
2017-07-30Improved speed of enumeration methodsChristopher Aue
2017-07-28Added Array#bsearch_indexChristopher Aue
2017-07-28Refactored Array#bsearchChristopher Aue
2017-07-28Tested Array#bsearch more thoroughlyChristopher Aue
2017-07-27Embed small size array elements in the heap.Yukihiro "Matz" Matsumoto
It reduces the memory consumption and sometimes improve the performance as well. For example, the consumed memory size of `bench/bm_ao_render.rb` is reduced from 1.2GB to 1GB, and its total execution time become 18.795 sec from 22.229 sec.
2017-07-25Reimplement sort method to reduce array copying.Yukihiro "Matz" Matsumoto
2017-07-24Should not update `@objs` from mruby-bin-mruby mrbgem.rake; fix #3751Yukihiro "Matz" Matsumoto
2017-07-24Initialize potentially uninitialized local variable.Yukihiro "Matz" Matsumoto
2017-07-20Need to patch `OP_GETUPVAR` and `OP_SETUPVAR`; fix #3732Yukihiro "Matz" Matsumoto
2017-07-19Merge pull request #3746 from christopheraue/mod_singleton_class_pYukihiro "Matz" Matsumoto
Implemented Module#singleton_class?
2017-07-18Fixed Module#to_s and #name for #const_set modulesChristopher Aue
2017-07-18implemented Module#singleton_class?Christopher Aue
2017-07-16added tests for #3736Christopher Aue
2017-07-15Add `Hash#transform_keys!` and `Hash#transform_values`.Yukihiro "Matz" Matsumoto
2017-07-15Use `keys.each` instead of unstable `each_keys`.Yukihiro "Matz" Matsumoto
2017-07-14Remove duplication in `mruby-hash-ext` test.Yukihiro "Matz" Matsumoto
2017-07-14Avoid duplicated width filling for sprintf `%d` specifier; fix #3736Yukihiro "Matz" Matsumoto
2017-07-14Add `Hash#transform_{keys,values}` to `mruby-hash-ext`.Yukihiro "Matz" Matsumoto
2017-07-13Use `floor()` to implement `round()` on WIN32 platform.Yukihiro "Matz" Matsumoto
This change was suggested by Akira Kakuto.
2017-07-13Define `round()` only on WIN32 platform; fix #3741Yukihiro "Matz" Matsumoto
2017-07-12`while`|`until` should have the value from `break`; fix #3735Yukihiro "Matz" Matsumoto
2017-07-12Use "$!" specifier of `mrb_get_args`.Yukihiro "Matz" Matsumoto
2017-07-05`print("%d", 0)` should not print `-0`; fix #3731Yukihiro "Matz" Matsumoto
2017-07-05Negation was not a good way to handle negative integers; fix #3729Yukihiro "Matz" Matsumoto
There's a number that negation does not work (-2147483648 in 32bit environment).
2017-07-05In Ruby, `sprintf` specifier `%u` should behave as `%d`; fix #3730Yukihiro "Matz" Matsumoto
Since there's no unsigned integer in Ruby. Binary, octal and hexadecimal negative numbers can be represented by using 2's compliment. But decimal (not being power of 2) cannot be use that kind of format.
2017-07-04Refactor `sprintf()` code.Yukihiro "Matz" Matsumoto
2017-07-04Initialize `flags` for each loop.Yukihiro "Matz" Matsumoto
2017-06-28Remove redundant use of `Object#to_s` in interpolation.Yukihiro "Matz" Matsumoto
2017-06-28Provide better way to check compile errors.Yukihiro "Matz" Matsumoto
Now you can just call `mrb_load_*` functions then check `context->parser_nerr > 0` if the return value is `undef`, instead of calling `mrb_parse_*` functions independently. ref #3248 #3331
2017-06-28Revert "Make `mrb_load_exec` a static function."Yukihiro "Matz" Matsumoto
This reverts commit 7944d9a6d4ccb94189f37d307d384ed1cfe33e17. Because it voids #3248 and #3331. But we should add better way to check whether compile errors occur without duplicated callings.
2017-06-28Avoid `mrb_funcall()` unless absolutely necessary; ref #3722Yukihiro "Matz" Matsumoto
As a result, `#chr` is not called for ch < 0x80, so we need to update the "invalid chr" test.
2017-06-27Remove unnecessary initialization of a local variable.Yukihiro "Matz" Matsumoto
2017-06-27No longer need to copy `argv` from `mrb_get_args`; ref #3722Yukihiro "Matz" Matsumoto