summaryrefslogtreecommitdiffhomepage
path: root/mrbgems
AgeCommit message (Collapse)Author
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
2017-06-23Should raise an exception if `break` called in ensure; fix #3721Yukihiro "Matz" Matsumoto
2017-06-23Make `mrb_load_exec` a static function.Yukihiro "Matz" Matsumoto
2017-06-21Add write barrier to protect proc reference from fiber; fix #3719Yukihiro "Matz" Matsumoto
2017-06-21Use `alias enum_for to_enum` instead of `alias :enum_for :to_enum`.Yukihiro "Matz" Matsumoto
2017-06-21use `unless` instead of `if not`.Yukihiro "Matz" Matsumoto
2017-06-20Avoid using `snprintf(3)` in case `MRB_DISABLE_STDIO`; fix #3714Yukihiro "Matz" Matsumoto
2017-06-19Save gc_arena after buffer got allocatedAsmod4n
Latest fix was freeing the buffer while it was still in use. Fixes #3712