#object.c:
Init_Object()
{
rb_cObject = boot_defclass(“Object”, 0);
rb_cModule = boot_defclass(“Module”, rb_cObject);
rb_cClass = boot_defclass(“Class”, rb_cModule);
}
=======boot_defclass========
boot_defclass(name, super)
{
VALUE obj = rb_class_boot(super);
}
========rb_class_boot========
rb_class_boot(super)
{
OBJSETUP(klass, rb_cClass, T_CLASS);
}
####################################
when call “boot_defclass(“Object”, 0)”,“rb_cClass” is not defined,why
“rb_class_boot” can call “rb_cClass”?