class TaxonReporter::Taxon
Attributes
records[R]
Public Class Methods
new(records=[])
click to toggle source
# File lib/taxon_reporter/taxon.rb, line 7 def initialize(records=[]) @records = [] @fields = {} @values = {} records.each {|r| add_record(r)} end
Public Instance Methods
add_field(field)
click to toggle source
# File lib/taxon_reporter/taxon.rb, line 33 def add_field(field) key = field.id @fields[key] = field unless @fields.member?(key) end
add_record(record)
click to toggle source
# File lib/taxon_reporter/taxon.rb, line 23 def add_record(record) @records.push(record) add_values(record.field, record.values) end
add_values(field, values)
click to toggle source
# File lib/taxon_reporter/taxon.rb, line 28 def add_values(field, values) add_field(field) @values[field.id] = field.merge_values(@values[field.id], values) end
fields()
click to toggle source
# File lib/taxon_reporter/taxon.rb, line 14 def fields; @fields.values; end
values(field)
click to toggle source
# File lib/taxon_reporter/taxon.rb, line 15 def values(field) if field.is_a?(TaxonReporter::Field) @values[field.id] elsif field.is_a?(String) @values[field] end end