# File lib/aws/s3/cors_rule_collection.rb, line 179
      def rule_hashes rule
        case rule
        when Hash then rule
        when CORSRule then rule.to_h
        when CORSRuleCollection then rule.map(&:to_h)
        when Array then rule.map{|r| rule_hashes(r) }.flatten
        else
          msg = "Expected one or more CORSRule, CORSRuleCollection or hash"
          msg << ", got #{rule.class.name}"
          raise ArgumentError, msg
        end
      end