Remove unused subclass methods

This commit is contained in:
John Hawthorn 2025-11-07 16:15:38 -08:00
parent f95aa5b2a9
commit 6238b6f53e
Notes: git 2025-11-10 23:56:06 +00:00
2 changed files with 0 additions and 43 deletions

37
class.c
View File

@ -590,13 +590,6 @@ rb_module_add_to_subclasses_list(VALUE module, VALUE iclass)
} }
} }
void
rb_class_remove_subclass_head(VALUE klass)
{
rb_classext_t *ext = RCLASS_EXT_WRITABLE(klass);
rb_class_classext_free_subclasses(ext, klass, false);
}
static struct rb_subclass_entry * static struct rb_subclass_entry *
class_get_subclasses_for_ns(struct st_table *tbl, VALUE box_id) class_get_subclasses_for_ns(struct st_table *tbl, VALUE box_id)
{ {
@ -663,18 +656,6 @@ rb_class_remove_from_super_subclasses(VALUE klass)
RCLASSEXT_BOX_SUPER_SUBCLASSES(ext) = 0; RCLASSEXT_BOX_SUPER_SUBCLASSES(ext) = 0;
} }
void
rb_class_remove_from_module_subclasses(VALUE klass)
{
rb_classext_t *ext = RCLASS_EXT_WRITABLE(klass);
rb_box_subclasses_t *box_subclasses = RCLASSEXT_BOX_MODULE_SUBCLASSES(ext);
if (!box_subclasses) return;
remove_class_from_subclasses(box_subclasses->tbl, box_subclasses_tbl_key(RCLASSEXT_BOX(ext)), klass);
rb_box_subclasses_ref_dec(box_subclasses);
RCLASSEXT_BOX_MODULE_SUBCLASSES(ext) = 0;
}
void void
rb_class_classext_free_subclasses(rb_classext_t *ext, VALUE klass, bool replacing) rb_class_classext_free_subclasses(rb_classext_t *ext, VALUE klass, bool replacing)
{ {
@ -730,24 +711,6 @@ class_detach_subclasses(VALUE klass, VALUE arg)
rb_class_remove_from_super_subclasses(klass); rb_class_remove_from_super_subclasses(klass);
} }
void
rb_class_detach_subclasses(VALUE klass)
{
rb_class_foreach_subclass(klass, class_detach_subclasses, Qnil);
}
static void
class_detach_module_subclasses(VALUE klass, VALUE arg)
{
rb_class_remove_from_module_subclasses(klass);
}
void
rb_class_detach_module_subclasses(VALUE klass)
{
rb_class_foreach_subclass(klass, class_detach_module_subclasses, Qnil);
}
static void static void
class_switch_superclass(VALUE super, VALUE klass) class_switch_superclass(VALUE super, VALUE klass)
{ {

View File

@ -488,15 +488,9 @@ RCLASSEXT_SET_INCLUDER(rb_classext_t *ext, VALUE klass, VALUE includer)
typedef void rb_class_classext_foreach_callback_func(rb_classext_t *classext, bool is_prime, VALUE box_value, void *arg); typedef void rb_class_classext_foreach_callback_func(rb_classext_t *classext, bool is_prime, VALUE box_value, void *arg);
void rb_class_classext_foreach(VALUE klass, rb_class_classext_foreach_callback_func *func, void *arg); void rb_class_classext_foreach(VALUE klass, rb_class_classext_foreach_callback_func *func, void *arg);
void rb_class_subclass_add(VALUE super, VALUE klass); void rb_class_subclass_add(VALUE super, VALUE klass);
void rb_class_remove_from_super_subclasses(VALUE);
void rb_class_remove_from_module_subclasses(VALUE);
void rb_class_classext_free_subclasses(rb_classext_t *, VALUE, bool); void rb_class_classext_free_subclasses(rb_classext_t *, VALUE, bool);
void rb_class_foreach_subclass(VALUE klass, void (*f)(VALUE, VALUE), VALUE); void rb_class_foreach_subclass(VALUE klass, void (*f)(VALUE, VALUE), VALUE);
void rb_class_detach_subclasses(VALUE);
void rb_class_detach_module_subclasses(VALUE);
void rb_class_update_superclasses(VALUE); void rb_class_update_superclasses(VALUE);
size_t rb_class_superclasses_memsize(VALUE);
void rb_class_remove_subclass_head(VALUE);
int rb_singleton_class_internal_p(VALUE sklass); int rb_singleton_class_internal_p(VALUE sklass);
VALUE rb_class_set_super(VALUE klass, VALUE super); VALUE rb_class_set_super(VALUE klass, VALUE super);
VALUE rb_class_boot(VALUE); VALUE rb_class_boot(VALUE);