summaryrefslogtreecommitdiffhomepage
path: root/include
AgeCommit message (Collapse)Author
2018-12-11Merge pull request #4184 from mruby/stableYukihiro "Matz" Matsumoto
Release mruby 2.0.0
2018-12-11Update release date.2.0.0Hiroshi Mimaki
2018-12-11Rename `ht_foreach_func` to `mrb_hash_foreach_func`.Yukihiro "Matz" Matsumoto
2018-12-11Add `mrb_` prefix to `iv_foreach_func`.Yukihiro "Matz" Matsumoto
2018-12-11Add new API `mrb_iv_foreach()` to iterate over instance variables.Yukihiro "Matz" Matsumoto
2018-12-11Add API function `mrb_hash_foreach()` to iterate over items in a hash.Yukihiro "Matz" Matsumoto
2018-11-25Remove `do { ... } while(0)` hacks from `MRB_TRY` macros.Yukihiro "Matz" Matsumoto
Because it can swallow `break` etc. if they are used in loops.
2018-11-20Update documentation to mrb_load_irepRob Fors
2018-11-20Update version number; fix #4165Yukihiro "Matz" Matsumoto
2018-11-20Fixed a bug in `mirb` heredoc handling; fix #3989Yukihiro "Matz" Matsumoto
2018-11-20Restrict total recursion number of `ecall()`; fix #3789Yukihiro "Matz" Matsumoto
2018-11-19Restore `mrb_string_type` function for compatibility.Yukihiro "Matz" Matsumoto
2018-11-19Use type checking `mrb_to_str` instead of converting `mrb_str_to_str`.Yukihiro "Matz" Matsumoto
2018-11-19Removed `to_ary` conversion method.Yukihiro "Matz" Matsumoto
2018-11-19Remove implicit conversion using `to_str` method; fix #3854Yukihiro "Matz" Matsumoto
We have added internal convenience method `__to_str` which does string type check. The issue #3854 was fixed but fundamental flaw of lack of stack depth check along with fibers still remains. Use `MRB_GC_FIXED_ARENA` for workaround.
2018-11-19Remove implicit conversion using `to_int` method.Yukihiro "Matz" Matsumoto
The ISO standard does not include implicit type conversion using `to_int`. This implicit conversion often causes vulnerability. There will be no more attacks like #4120. In addition, we have added internal convenience method `__to_int` which does type check and conversion (from floats).
2018-11-19Improve Hash table using variable sized segments.Yukihiro "Matz" Matsumoto
2018-11-15Shrink file name table size to `uint16_t`; ref #4138Yukihiro "Matz" Matsumoto
2018-11-15Remove `filename`&`lines` from `mrb_irep` struct.Yukihiro "Matz" Matsumoto
This patch slightly reduce memory consumption (2% for my test).
2018-11-02Remove reserved symbols for now.Yukihiro "Matz" Matsumoto
It should be done by planned embedded symbols.
2018-10-29Reduce unnecessary symbol table entrytake-cheeze
2018-10-29Define null symboltake-cheeze
2018-10-29Reduce instruction sizetake-cheeze
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-25Fix minor typos (#4126)Daniel Varga
2018-09-16Add support for iOS platforms that does not support `fork`; fix #4113Yukihiro "Matz" Matsumoto
2018-09-07Fix typo for concatenatedearblue
2018-09-01Remove `MRB_API` from `mrb_f_send` which is not API.Yukihiro "Matz" Matsumoto
2018-08-30Update `RITE_BINARY_FORMAT_VER` and `RITE_VM_VER`.Yukihiro "Matz" Matsumoto
The bytecode format was updated so the header version constants must be updated as well.
2018-08-30Add new function `mrb_ensure_hash_type()`; ref #4097Yukihiro "Matz" Matsumoto
Unlike `mrb_check_hash_type()` that returns `nil` if the argument is not a `Hash`, `mrb_ensure_hash_type()` raises a `TypeError` exception.
2018-08-30`uint16_t` is too small for reference count; fix #4093Yukihiro "Matz" Matsumoto
Use `uint32_t` instead. Theoretically `uint32_t` can overflow as well, but I think it is sufficient size for embeddable Ruby VM.
2018-08-29Fix type of `eidx` and `ridx` from `uint8_t` to `uint16_t`; fix #4088Yukihiro "Matz" Matsumoto
A byte was too small to hold ensure&rescue stacks indexes.
2018-08-29Move back `mrb_define_alias` to `mruby.h` to avoid breakage.Yukihiro "Matz" Matsumoto
2018-08-25Reduce integer casting warnings.Yukihiro "Matz" Matsumoto
2018-08-25Hash splat `**` should not be ignored.Yukihiro "Matz" Matsumoto
Implemented by adding `OP_HASHCAT` that merges hashes.
2018-08-25Add a new function `mrb_hash_merge()`.Yukihiro "Matz" Matsumoto
2018-08-25Fix misspelling words in commentsKazuhiro Sera
2018-08-25Rename ambiguous function names.Yukihiro "Matz" Matsumoto
`mrb_iv_p` -> `mrb_iv_name_sym_p` `mrb_iv_check` -> `mrb_iv_name_sym_check`
2018-08-25Remove utility functions: `mrb_vm_iv_{get,set}`.Yukihiro "Matz" Matsumoto
2018-08-25Small refactoring.Yukihiro "Matz" Matsumoto
The macro `RCLASS_SUPER`, `RCLASS_IV_TBL` and `RCLASS_M_TBL` are removed from `include/mruby/class.h`.
2018-08-25Fix mrb_value size with MRB_WORD_BOXING on 32-bit modedearblue
2018-08-25Remove `nregs` member from `mrb_callinfo`.Yukihiro "Matz" Matsumoto
This means reducing one word per a call frame.
2018-08-25Reorganize flags values for classes; fix #3975Yukihiro "Matz" Matsumoto
Renamed flag macro names as well: `MRB_FLAG_IS_FROZEN` -> `MRB_FL_OBJ_FROZEN` `MRB_FLAG_IS_PREPENDED` -> `MRB_FL_CLASS_IS_PREPENDED` `MRB_FLAG_IS_ORIGIN` -> `MRB_FL_CLASS_IS_ORIGIN` `MRB_FLAG_IS_INHERITED` -> `MRB_FL_CLASS_IS_INHERITED`
2018-07-31Bytecode support for `mrdb`.Yukihiro "Matz" Matsumoto
2018-07-31Removed unused instruction: `OP_KDICT`.Yukihiro "Matz" Matsumoto
2018-07-30Keyword argument implemented.Yukihiro "Matz" Matsumoto
2018-07-30New bytecode implementation of mruby VM.Yukihiro "Matz" Matsumoto
2018-07-11move declaration of mrb_irep_remove_lv from dump.h to irep.hyuri
2018-07-10add mrbc option `--remove-lv`yuri
* refactor: move `irep_remove_lv` from `mruby-bin-strip` gem to src/dump and rename to `mrb_irep_remove_lv` * add: mrbc option `--remove-lv` to remove LVAR section
2018-06-20Export mrb_utf8_from_locale() and mrb_locale_from_utf8()Kouhei Sutou