class Class
def subclasses
class Baz < Bar; end
class Bar < Foo; end
class Foo; end
Returns an array with the direct children of +self+.
def subclasses subclasses, chain = [], descendants chain.each do |k| subclasses << k unless chain.any? { |c| c > k } end subclasses end