class ArelExtensions::Nodes::DateSub
Constants
- RETURN_TYPE
Public Class Methods
new(expr)
click to toggle source
Calls superclass method
# File lib/arel_extensions/nodes/date_diff.rb, line 173 def initialize(expr) super [expr.first, convert_number(expr[1])] end
Public Instance Methods
convert_number(object)
click to toggle source
# File lib/arel_extensions/nodes/date_diff.rb, line 177 def convert_number(object) case object when Arel::Attributes::Attribute, Arel::Nodes::Node, Integer object when String object.to_i else if defined?(ActiveSupport::Duration) && ActiveSupport::Duration === object object.to_i else raise(ArgumentError, "#{object.class} cannot be converted to Number") end end end