pub(crate) fn real_class(&self) -> Module {
        let mut class = self.class;
        loop {
            if class.is_singleton() {
                class = class.superclass().unwrap();
            } else {
                return class;
            }
        }
    }
Return a "real" class of the object.
ruruby/src/value/rvalue.rs