Class: CircleciArtifact::ResultSet
- Inherits:
-
Object
- Object
- CircleciArtifact::ResultSet
- Defined in:
- lib/circleci_artifact.rb
Overview
Set of all matching queries
Instance Method Summary collapse
- #add_result(result) ⇒ void
-
#initialize ⇒ ResultSet
constructor
A new instance of ResultSet.
-
#result_for_query(query) ⇒ Result
Returns first result for query.
-
#results_for_query(query) ⇒ Array<Result>
Returns all results matching query.
-
#url_for_query(query) ⇒ String
Returns first url for query.
Constructor Details
#initialize ⇒ ResultSet
Returns a new instance of ResultSet.
47 48 49 |
# File 'lib/circleci_artifact.rb', line 47 def initialize @results = {} end |
Instance Method Details
#add_result(result) ⇒ void
This method returns an undefined value.
53 54 55 56 57 58 |
# File 'lib/circleci_artifact.rb', line 53 def add_result(result) raise ArgumentError unless result.is_a?(Result) results = @results[result.query] || [] results.push(result) @results[result.query] = results end |
#result_for_query(query) ⇒ Result
Returns first result for query
64 65 66 |
# File 'lib/circleci_artifact.rb', line 64 def result_for_query(query) results_for_query(query).first end |
#results_for_query(query) ⇒ Array<Result>
Returns all results matching query
72 73 74 75 |
# File 'lib/circleci_artifact.rb', line 72 def results_for_query(query) raise ArgumentError unless query.is_a?(Query) @results[query] ? @results[query] : [] end |
#url_for_query(query) ⇒ String
Returns first url for query
81 82 83 |
# File 'lib/circleci_artifact.rb', line 81 def url_for_query(query) result_for_query(query)&.url end |