Class: Positionable::Wrapper

Inherits:
Object
  • Object
show all
Defined in:
lib/positionable.rb

Overview

Wrapper class for all the lists’ options

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeWrapper

Returns a new instance of Wrapper.



93
94
95
# File 'lib/positionable.rb', line 93

def initialize
  self.lists = {}
end

Instance Attribute Details

#listsObject

Returns the value of attribute lists.



92
93
94
# File 'lib/positionable.rb', line 92

def lists
  @lists
end

Instance Method Details

#<<(options = {}) ⇒ Object



97
98
99
100
# File 'lib/positionable.rb', line 97

def <<(options={})
  options[:conditions_to_eval] = Positionable::EvalSupport.conditions_to_eval(options[:conditions])
  self.lists[options.delete(:list_name)] = options
end

#conditions(list_name) ⇒ Object



114
115
116
# File 'lib/positionable.rb', line 114

def conditions(list_name)
  lists[list_name][:conditions]
end

#has_conditions?(list_name) ⇒ Boolean

Returns:

  • (Boolean)


110
111
112
# File 'lib/positionable.rb', line 110

def has_conditions?(list_name)
  !!lists[list_name][:conditions]
end

#has_scope?(list_name) ⇒ Boolean

Returns:

  • (Boolean)


102
103
104
# File 'lib/positionable.rb', line 102

def has_scope?(list_name)
  !!lists[list_name][:scope]
end

#scope(list_name) ⇒ Object



106
107
108
# File 'lib/positionable.rb', line 106

def scope(list_name)
  lists[list_name][:scope].is_a?(Array) ? lists[list_name][:scope] : [lists[list_name][:scope]]
end