class TermUtils::AP::ParameterResult

Represents a result for a parameter.

Attributes

parameter[RW]

@return [Parameter]

results[RW]

@return [Array<ArticleResult>]

Public Class Methods

new(parent, parameter) click to toggle source

Constructs a new ParameterResult. @param parent [Result] @param parameter [Parameter]

# File lib/term_utils/ap/result.rb, line 82
def initialize(parent, parameter)
  @parent = parent
  @parent.add_result(self)
  @parameter = parameter
  @results = []
end

Public Instance Methods

add_result(result) click to toggle source

Adds an ArticleResult. @param result [ArticleResult]

# File lib/term_utils/ap/result.rb, line 91
def add_result(result)
  @results << result
end
find_article(id) click to toggle source

Returns the first ArticleResult for a given article id. @param id [Symbol] @return [ArticleResult]

# File lib/term_utils/ap/result.rb, line 103
def find_article(id)
  @results.find { |r| r.art_id == id }
end
find_articles(id) click to toggle source

Returns all ArticleResult(s) for a given article id. @param id [Symbol] @return [Array<Result>]

# File lib/term_utils/ap/result.rb, line 110
def find_articles(id)
  @results.find_all { |r| r.art_id == id }
end
param_id() click to toggle source

@return [Symbol]

# File lib/term_utils/ap/result.rb, line 96
def param_id
  @parameter.id
end
value(id = nil) click to toggle source

Returns the value of the first ArticleResult. @param id [Symbol] Filter of article id. @return [Object]

# File lib/term_utils/ap/result.rb, line 117
def value(id = nil)
  return @results.first.value unless id

  find_article(id).value
end
values(id = nil) click to toggle source

Returns the value of all ArticleResult(s). @param id [Symbol] Filter of article id. @return [Array<Object>]

# File lib/term_utils/ap/result.rb, line 126
def values(id = nil)
  return @results.map(&:value) unless id

  vals = []
  @results.each do |r|
    next if r.art_id != id

    vals << r.values
  end
  vals
end