Class: MundaneSearch::Stack
- Inherits:
-
Object
- Object
- MundaneSearch::Stack
- Defined in:
- lib/mundane-search/stack.rb
Direct Known Subclasses
Instance Method Summary collapse
- #add(filter_canister) ⇒ Object
- #all_filters ⇒ Object
- #all_results ⇒ Object
- #collection ⇒ Object
- #filter ⇒ Object
-
#initialize(previous_result, filter_canister) ⇒ Stack
constructor
A new instance of Stack.
-
#params ⇒ Object
necessary?.
Constructor Details
#initialize(previous_result, filter_canister) ⇒ Stack
Returns a new instance of Stack.
12 13 14 |
# File 'lib/mundane-search/stack.rb', line 12 def initialize(previous_result, filter_canister) @previous_result, @filter_canister = previous_result, filter_canister end |
Instance Method Details
#add(filter_canister) ⇒ Object
25 26 27 |
# File 'lib/mundane-search/stack.rb', line 25 def add(filter_canister) Stack.new(self,filter_canister) end |
#all_filters ⇒ Object
3 4 5 6 |
# File 'lib/mundane-search/stack.rb', line 3 def all_filters return @all_filters if @all_filters @all_filters = all_results.collect(&:filter) end |
#all_results ⇒ Object
8 9 10 |
# File 'lib/mundane-search/stack.rb', line 8 def all_results [self] + previous_result.all_results end |
#collection ⇒ Object
16 17 18 |
# File 'lib/mundane-search/stack.rb', line 16 def collection filter.call.first end |
#filter ⇒ Object
29 30 31 |
# File 'lib/mundane-search/stack.rb', line 29 def filter @filter ||= filter_canister.build(previous_result.collection, previous_result.params) end |
#params ⇒ Object
necessary?
21 22 23 |
# File 'lib/mundane-search/stack.rb', line 21 def params filter.call.last end |