Class: EasyCols::ColumnSelector
- Inherits:
-
Object
- Object
- EasyCols::ColumnSelector
- Defined in:
- lib/easy_cols/column_selector.rb
Instance Method Summary collapse
-
#initialize(headers) ⇒ ColumnSelector
constructor
A new instance of ColumnSelector.
- #select(selectors) ⇒ Object
Constructor Details
#initialize(headers) ⇒ ColumnSelector
Returns a new instance of ColumnSelector.
5 6 7 |
# File 'lib/easy_cols/column_selector.rb', line 5 def initialize(headers) @headers = headers end |
Instance Method Details
#select(selectors) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/easy_cols/column_selector.rb', line 9 def select(selectors) indices = [] selectors.each do |selector| result = case selector when Integer then select_by_index(selector) when Range then select_by_range(selector) when Array then select_by_array(selector) when String then select_by_name(selector) else raise SelectionError, "Invalid selector type: #{selector.class}" end indices.concat(result) end indices.uniq.sort end |