Sha256: 6b2d87998e1831b211d4d0cc72ef62d6114e4455b2554972c861138e02a7c570

Contents?: true

Size: 703 Bytes

Versions: 23

Compression:

Stored size: 703 Bytes

Contents

module EY
  class CloudClient
    class ResolverResult
      attr_reader :api, :matches, :errors, :suggestions

      def initialize(api, matches, errors, suggestions)
        @api, @matches, @errors, @suggestions = api, matches, errors, suggestions
      end

      def one_match?()    matches.size == 1 end
      def no_matches?()   matches.empty?    end
      def many_matches?() matches.size > 1  end

      def one_match(&block)    one_match?    && block && block.call(matches.first)       end
      def no_matches(&block)   no_matches?   && block && block.call(errors, suggestions) end
      def many_matches(&block) many_matches? && block && block.call(matches)             end
    end
  end
end

Version data entries

23 entries across 23 versions & 1 rubygems

Version Path
engineyard-cloud-client-2.1.1 lib/engineyard-cloud-client/resolver_result.rb
engineyard-cloud-client-2.1.0 lib/engineyard-cloud-client/resolver_result.rb
engineyard-cloud-client-1.0.16 lib/engineyard-cloud-client/resolver_result.rb
engineyard-cloud-client-2.0.1 lib/engineyard-cloud-client/resolver_result.rb
engineyard-cloud-client-2.0.0 lib/engineyard-cloud-client/resolver_result.rb
engineyard-cloud-client-1.0.15 lib/engineyard-cloud-client/resolver_result.rb
engineyard-cloud-client-1.0.14 lib/engineyard-cloud-client/resolver_result.rb
engineyard-cloud-client-1.0.13 lib/engineyard-cloud-client/resolver_result.rb
engineyard-cloud-client-1.0.12 lib/engineyard-cloud-client/resolver_result.rb
engineyard-cloud-client-1.0.11 lib/engineyard-cloud-client/resolver_result.rb
engineyard-cloud-client-1.0.10 lib/engineyard-cloud-client/resolver_result.rb
engineyard-cloud-client-1.0.9 lib/engineyard-cloud-client/resolver_result.rb
engineyard-cloud-client-1.0.8 lib/engineyard-cloud-client/resolver_result.rb
engineyard-cloud-client-1.0.7 lib/engineyard-cloud-client/resolver_result.rb
engineyard-cloud-client-1.0.6 lib/engineyard-cloud-client/resolver_result.rb
engineyard-cloud-client-1.0.5 lib/engineyard-cloud-client/resolver_result.rb
engineyard-cloud-client-1.0.4 lib/engineyard-cloud-client/resolver_result.rb
engineyard-cloud-client-1.0.3 lib/engineyard-cloud-client/resolver_result.rb
engineyard-cloud-client-1.0.2 lib/engineyard-cloud-client/resolver_result.rb
engineyard-cloud-client-1.0.1 lib/engineyard-cloud-client/resolver_result.rb