diff options
author | yugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-08-31 05:55:57 +0000 |
---|---|---|
committer | yugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-08-31 05:55:57 +0000 |
commit | 6016abfe06c5125443bc1cdb9ad2c5696f3d843a (patch) | |
tree | f91d86965dc5f70f2d087164cdc8d696ddbc733c /eval_intern.h | |
parent | ed9c5ce4f55176312054dbe6c44bf71061b0056c (diff) | |
download | ruby-6016abfe06c5125443bc1cdb9ad2c5696f3d843a.tar.gz ruby-6016abfe06c5125443bc1cdb9ad2c5696f3d843a.tar.xz ruby-6016abfe06c5125443bc1cdb9ad2c5696f3d843a.zip |
* class.c: refactored singleton class related matters.
Handles eigenclasses and plain classes transparently.
(make_metaclass): renamed from make_metametaclass.
(METACLASS_OF): new utility macro
(META_CLASS_OF_CLASS_CLASS): ditto.
(ENSURE_EIGENCLASS): ditto.
(make_singleton_class): extracted from rb_singleton_class.
(boot_defclass): moved from object.c
(Init_class_hierarchy): extracted from Init_Object.
(rb_make_metaclass): refactored.
(singleton_class_of): extracted from rb_singleton_class.
(rb_singleton_class): refactored.
(rb_define_singleton_method): it needs a metaclass only
but not its metametaclass.
* object.c: booting class hierarchy was moved to class.c
for keeping dependency between compilation units least.
(Init_Object): extracting the booting into
Init_class_hierarchy.
(boot_defclass): moved to class.c.
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@24720 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'eval_intern.h')
0 files changed, 0 insertions, 0 deletions