Class: Filterameter::Helpers::RequestedSort
- Inherits:
-
Object
- Object
- Filterameter::Helpers::RequestedSort
- Defined in:
- lib/filterameter/helpers/requested_sort.rb
Overview
# Reqested Sort
Class RequestedSort parses the name and direction from a sort segment.
Constant Summary collapse
- SIGN_AND_NAME =
/(?<sign>[+|-]?)(?<name>\w+)/
Instance Attribute Summary collapse
-
#direction ⇒ Object
readonly
Returns the value of attribute direction.
-
#name ⇒ Object
readonly
Returns the value of attribute name.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(name, direction) ⇒ RequestedSort
constructor
A new instance of RequestedSort.
Constructor Details
#initialize(name, direction) ⇒ RequestedSort
Returns a new instance of RequestedSort.
19 20 21 22 |
# File 'lib/filterameter/helpers/requested_sort.rb', line 19 def initialize(name, direction) @name = name @direction = direction end |
Instance Attribute Details
#direction ⇒ Object (readonly)
Returns the value of attribute direction.
10 11 12 |
# File 'lib/filterameter/helpers/requested_sort.rb', line 10 def direction @direction end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
10 11 12 |
# File 'lib/filterameter/helpers/requested_sort.rb', line 10 def name @name end |
Class Method Details
.parse(sort) ⇒ Object
12 13 14 15 16 17 |
# File 'lib/filterameter/helpers/requested_sort.rb', line 12 def self.parse(sort) parsed = sort.match SIGN_AND_NAME new(parsed['name'], parsed['sign'] == '-' ? :desc : :asc) end |