summaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)Author
2018-10-23Fixed a bug in processing `OP_EXT?` instructions.Yukihiro "Matz" Matsumoto
fix haconiwa/haconiwa#171
2018-10-20Need to freeze string keys.Yukihiro "Matz" Matsumoto
2018-10-18Merge pull request #4142 from iij/mergesortYukihiro "Matz" Matsumoto
replace quicksort with mergesort.
2018-10-18replace quicksort with mergesort.Tomoyuki Sahara
2018-10-13Fixed a bug caused by too much optimization; fix #4137Yukihiro "Matz" Matsumoto
2018-10-12Fixed broken stack consistency; fix #4135Yukihiro "Matz" Matsumoto
2018-10-12Should not compare `undef` (deleted) key in hashes; fix #4136Yukihiro "Matz" Matsumoto
2018-10-12Call `uniq!` for each union processing in `Array#union`.Yukihiro "Matz" Matsumoto
2018-10-12Add `NULL` check in `sg_compact()`; fix #4139Yukihiro "Matz" Matsumoto
2018-10-12`Hash#delete` should return the deleted value; fix #4133Yukihiro "Matz" Matsumoto
2018-10-05Merge pull request #4131 from junaruga/feature/ci-refactoringYukihiro "Matz" Matsumoto
Refactor .travis.yml to remove duplicated env: MRUBY_CONFIG.
2018-10-05Refactor .travis.yml to remove duplicated env: MRUBY_CONFIG.Jun Aruga
2018-10-02Fixed SEGV from `eval` called form top-level `mrb_funcall()`; fix #4028Yukihiro "Matz" Matsumoto
2018-09-27Fixed a `String#squeeze` bug in handling `iso-8859-1` strings; ref #4127Yukihiro "Matz" Matsumoto
2018-09-26Implement `Hash#rehash` in C using `sg_compact()`.Yukihiro "Matz" Matsumoto
2018-09-26Add index to larger segment lists for performanceYukihiro "Matz" Matsumoto
2018-09-26Use `mrb_undef_value` for delete mark instead of shifting Hash entry table.Yukihiro "Matz" Matsumoto
That means entry table should be compacted periodically by `sg_compact()`.
2018-09-26Use segmented list to implement `Hash` [Experimental]Yukihiro "Matz" Matsumoto
I know it's not hash at all, but reduce memory consumption.
2018-09-26Revert "Fix comparisons in str_squeeze."Yukihiro "Matz" Matsumoto
This reverts commit 7b04fcd092006b6e78cd63619fb7ae972f8e0c5d. The issue was addressed by 9e3cbaa. No longer needed.
2018-09-26Avoid using `memmove()` for performance; fix #4130Yukihiro "Matz" Matsumoto
2018-09-26Disambiguate block braces.Yukihiro "Matz" Matsumoto
2018-09-26Rename `tr_pattern_free()` to `tr_free_pattern()`.Yukihiro "Matz" Matsumoto
2018-09-26Small refactoring in vm.cYukihiro "Matz" Matsumoto
2018-09-25Merge pull request #4128 from take-cheeze/patch-1Yukihiro "Matz" Matsumoto
Fix memory leak in `mrb_str_count`
2018-09-25Fix leak in `mrb_str_count`Takeshi Watanabe
2018-09-25Merge pull request #4127 from clayton-shopify/fix-str-squeeze-comparisonsYukihiro "Matz" Matsumoto
Fix comparisons in str_squeeze.
2018-09-25Fix minor typos (#4126)Daniel Varga
2018-09-24Fix comparisons in str_squeeze.Clayton Smith
2018-09-21Add compiler flag to disable direct threading (#4075)sbsoftware
* Add option to disable direct threading * Prepend MRB_ to option name
2018-09-21Fixed a top-level local variable bug in `mirb`.Yukihiro "Matz" Matsumoto
`OP_STOP` returned a wrong value.
2018-09-21Implement `String#delete` and `#delete!`; ref #4086Yukihiro "Matz" Matsumoto
mruby restriction: In mruby, `String#delete` only takes single pattern argument.
2018-09-21Implement `String#count`; ref #4086Yukihiro "Matz" Matsumoto
mruby restriction: In mruby, `String#count` does not take multiple pattern arguments, but only one pattern.
2018-09-21Add `String#squeeze` and `#squeeze!`; ref #4086Yukihiro "Matz" Matsumoto
mruby restriction: `String#squeeze` can take more than 1 pattern arguments in CRuby, in that case, the intersection of patterns will be used to match. But in mruby, it doesn't take multiple patterns.
2018-09-21Add `String#tr_s` and `String#tr_s!`; ref #4086Yukihiro "Matz" Matsumoto
2018-09-21Add `String#tr` and `#tr!` to `mruby-string-ext` gem; fix #4086Yukihiro "Matz" Matsumoto
This patch is based on `mruby/c` implementation by Hirohito Higashi. We might need to add `#tr_s`, `#squeeze` and `#delete` as well. Adding them should not be too hard using functions we implemented here.
2018-09-21Implement `Array#union` which is introduced in Ruby2.6.Yukihiro "Matz" Matsumoto
2018-09-20Improve performance of `Array#uniq!`.Yukihiro "Matz" Matsumoto
2018-09-20Merge branch 'dearblue-assign-anon-class-name'Yukihiro "Matz" Matsumoto
2018-09-20Renamed `is_namespace()` to `namespace_p()`.Yukihiro "Matz" Matsumoto
2018-09-20Revert "Add MRB_IMPROVE_META_PROGRAMMING configuration"Yukihiro "Matz" Matsumoto
This reverts commit 1997fcf98f596f6af2bf1d20ccde1b1abfe7324d. It became the default behavior.
2018-09-20Merge branch 'assign-anon-class-name' of https://github.com/dearblue/mruby ↵Yukihiro "Matz" Matsumoto
into dearblue-assign-anon-class-name
2018-09-20Move `Symbol#to_proc` to the core from `mruby-symbol-ext` gem.Yukihiro "Matz" Matsumoto
Even though `Symbol#to_proc` is not included in ISO standard, the `some_method(&:method_name)` is used very widely and convenient. So we moved it to the core.
2018-09-20Make `#to_h` to take a block; [ruby-core:89088]Yukihiro "Matz" Matsumoto
2018-09-20Merge pull request #4112 from dearblue/fix-outer-module-nameYukihiro "Matz" Matsumoto
Fix outer module name
2018-09-20Allow nested gemboxes; fix #4124Yukihiro "Matz" Matsumoto
2018-09-20Small refactoring in `mruby-hash-ext`.Yukihiro "Matz" Matsumoto
2018-09-18Use `mrb_to_flo()` to check return value from `to_f`; fix #4115Yukihiro "Matz" Matsumoto
The ISO standard does not include implicit type conversion using `to_int`, `to_str` and sometimes `to_f`. For the compactness of the mruby implementation, maybe we should remove those implicit conversion from mruby.
2018-09-18Array size may be changed in `mrb_get_args()` reentry.Yukihiro "Matz" Matsumoto
fix #4116; fix #4117; fix #4118; fix #4119; fix #4120
2018-09-17Merge pull request #4122 from blacktm/iphone-exclude-pipe-execYukihiro "Matz" Matsumoto
Exclude pipe and exec on iOS/tvOS
2018-09-15Exclude pipe and exec on iOS/tvOSTom Black
Use of `execl()` is prohibited on these platforms