class RSpec::Matchers::BuiltIn::HaveAttributes

def perform_match(predicate)

def perform_match(predicate)
  cache_all_values
  expected.__send__(predicate) do |attribute_key, attribute_value|
    actual_has_attribute?(attribute_key, attribute_value)
  end
end