Class: FuzzyWhere::FuzzyDerivation
- Inherits:
-
Object
- Object
- FuzzyWhere::FuzzyDerivation
- Defined in:
- lib/fuzzy_where/fuzzy_derivation.rb
Overview
Class to take a column and a fuzzy predicate and return the equivalent standard query
Instance Attribute Summary collapse
-
#query ⇒ Object
readonly
Returns the value of attribute query.
Instance Method Summary collapse
-
#derivative_condition ⇒ ActiveRecord_Relation
Take instance attributtes and return a derivated query.
-
#initialize(query, table, column, fuzzy_predicate) ⇒ FuzzyDerivation
constructor
New FuzzyDerivation intance.
Constructor Details
#initialize(query, table, column, fuzzy_predicate) ⇒ FuzzyDerivation
New FuzzyDerivation intance
15 16 17 18 19 20 |
# File 'lib/fuzzy_where/fuzzy_derivation.rb', line 15 def initialize(query, table, column, fuzzy_predicate) @table = table @query = query @column = column @fuzzy_predicate = fuzzy_predicate end |
Instance Attribute Details
#query ⇒ Object (readonly)
Returns the value of attribute query.
8 9 10 |
# File 'lib/fuzzy_where/fuzzy_derivation.rb', line 8 def query @query end |
Instance Method Details
#derivative_condition ⇒ ActiveRecord_Relation
Take instance attributtes and return a derivated query
24 25 26 27 28 29 30 31 |
# File 'lib/fuzzy_where/fuzzy_derivation.rb', line 24 def derivative_condition min = @fuzzy_predicate[:min] max = @fuzzy_predicate[:max] increasing_conditions(min) if min && min != 'infinite'.freeze decreasing_conditions(max) if max && max != 'infinite'.freeze @query end |