class Steep::Subtyping::Check

def each_ancestor(ancestors, &block)

def each_ancestor(ancestors, &block)
  if block_given?
    if ancestors.super_class
      yield ancestors.super_class
    end
    ancestors.each_included_module(&block)
    ancestors.each_included_interface(&block)
    ancestors.each_prepended_module(&block)
    ancestors.each_extended_module(&block)
    ancestors.each_extended_interface(&block)
  else
    enum_for :each_ancestor, ancestors
  end
end