मैं आसानी से रूबी में वर्ग पदानुक्रम को चढ़ सकता हूं:
String.ancestors # [String, Enumerable, Comparable, Object, Kernel]
Enumerable.ancestors # [Enumerable]
Comparable.ancestors # [Comparable]
Object.ancestors # [Object, Kernel]
Kernel.ancestors # [Kernel]
क्या पदानुक्रम में भी उतरने का कोई तरीका है? मैं यह करना चाहूंगा
Animal.descendants # [Dog, Cat, Human, ...]
Dog.descendants # [Labrador, GreatDane, Airedale, ...]
Enumerable.descendants # [String, Array, ...]
लेकिन वहाँ एक descendantsविधि नहीं लगती है ।
(यह सवाल इसलिए उठता है क्योंकि मैं एक रेल एप्लिकेशन में सभी मॉडलों को ढूंढना चाहता हूं जो एक बेस क्लास से उतरते हैं और उन्हें सूचीबद्ध करते हैं; मेरे पास एक नियंत्रक है जो ऐसे किसी भी मॉडल के साथ काम कर सकता है और मैं नए मॉडल जोड़ना चाहूंगा नियंत्रक को संशोधित किए बिना।)