Files
mruby-mruby/include/mruby
Yukihiro "Matz" Matsumoto 93f5f22577 Heavily refactored how lexical scope links are implemented; fix #3821
Instead of `irep` links, we added a `upper` link to `struct RProc`.
To make a space for the `upper` link, we moved `target_class` reference.
If a `Proc` does not have `env`, `target_class` is saved in an `union`
shared with `env` (if a `Proc` has env, you can tell it by `MRB_PROC_ENV_P()).
Otherwise `target_class` is referenced from `env->c`. We removed links
in `env` as well.

This change removes 2 members from `mrb_irep` struct, thus saving 2
words per method/proc/block. This also fixes potential memory leaks
due to the circular references caused by a link from `mrb_irep`.
2017-10-28 00:29:30 +09:00
..
2017-04-03 16:56:27 +09:00
2015-05-17 22:25:55 +02:00
2017-08-09 21:56:27 +02:00
2017-06-19 09:23:03 +09:00
2016-11-25 23:15:37 +01:00
2017-03-02 10:58:26 +09:00