1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/include/ruby
Alan Wu b00f280d4b
Eagerly name modules and classes
* variable.c: make the hidden ivars `classpath` and `tmp_classpath` the source
  of truth for module and constant names. Assign to them when modules are bind
  to constants.

* variable.c: remove references to module name cache, as what used to be the cache
  is now the source of truth. Remove rb_class_path_no_cache().

* variable.c: remove the hidden ivar `classid`. This existed for the purposes of
  module name search, which is now replaced. Also, remove the associated
  rb_name_class().

* class.c: use rb_set_class_path_string to set the name of Object during boot.
  Must use a fstring as this runs before rb_cString is initialized and
  creating a normal string leads to a VALUE without a class.

* spec/ruby/core/module/name_spec.rb: add a few specs to specify what happens
  to Module#name across multiple operations. These specs pass without other
  code changes in this commit.

[Feature #15765]
2019-05-22 15:46:47 +09:00
..
backward
backward.h remove "deprecated" for rb_frame_method_id_and_class [Bug #15300] 2018-12-24 02:02:47 +00:00
debug.h
defines.h
encoding.h
intern.h Eagerly name modules and classes 2019-05-22 15:46:47 +09:00
io.h
missing.h
onigmo.h Reduce ONIG_NREGION from 10 to 4: power of 2 and testing revealed most pattern matches are less than or equal to 4 results 2019-05-07 21:58:55 +09:00
oniguruma.h
re.h Remove member char_offset_updated from struct rmatch as member char_offset_num_allocated can serve the same purpose as that predicate 2019-04-24 02:02:05 +09:00
regex.h
ruby.h Do not call memcpy if copying nothing 2019-05-17 13:16:39 +09:00
st.h Add GC.compact again. 2019-04-20 01:19:47 +00:00
subst.h
thread.h introduce rb_nogvl C-API to mark ubf as async-signal-safe 2019-01-04 13:14:11 +00:00
thread_native.h
util.h
version.h version.h (RUBY_VERSION): 2.7.0 development has started. 2018-12-25 13:45:17 +00:00
vm.h ViewVC of svn.ruby-lang.org was shutdown status. 2019-04-22 19:37:22 +09:00
win32.h