Прямо сейчас у меня есть ряд объектов, которые создаются с использованием расширений C, так что они
У меня есть код ruby, который создает три из них, вызывает их функции и обрабатывает результаты.Давайте назовем это так:
Что ж, теперь Менеджер - мое узкое место, поэтому я бы хотел превратить его в расширение Си.Но я не знаю, как создать экземпляр Foo, Bar и Baz из Manager.Должен ли я использовать код вроде:
VALUE module_klass = rb_const_get(rb_cObject, rb_intern("Module"));
VALUE object_klass = rb_const_get(module_klass, rb_intern("Foo"));
А затем вызывать методы вроде:
rb_funcall(object_klass, rb_intern("new"), 0);
Или есть более чистый способ?