# File lib/memoist.rb, line 105
  def all_memoized_structs
    @all_memoized_structs ||= begin
      structs = memoized_methods.dup

      # Collect the memoized_methods of ancestors in ancestor order
      # unless we already have it since self or parents could be overriding
      # an ancestor method.
      ancestors.grep(Memoist).each do |ancestor|
        ancestor.memoized_methods.each do |m|
          structs << m unless structs.any? { |am| am.memoized_method == m.memoized_method }
        end
      end
      structs
    end
  end