Class: Arel::Nodes::Casted

Inherits:
Node
  • Object
show all
Defined in:
lib/arel/nodes/casted.rb

Overview

:nodoc:

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Node

#_caller, #and, #each, #not, #or, #to_sql

Methods included from FactoryMethods

#create_and, #create_false, #create_join, #create_on, #create_string_join, #create_table_alias, #create_true, #grouping, #lower

Constructor Details

#initialize(val, attribute) ⇒ Casted

Returns a new instance of Casted.



6
7
8
9
10
# File 'lib/arel/nodes/casted.rb', line 6

def initialize val, attribute
  @val       = val
  @attribute = attribute
  super()
end

Instance Attribute Details

#attributeObject (readonly)

Returns the value of attribute attribute.



5
6
7
# File 'lib/arel/nodes/casted.rb', line 5

def attribute
  @attribute
end

#valObject (readonly)

Returns the value of attribute val.



5
6
7
# File 'lib/arel/nodes/casted.rb', line 5

def val
  @val
end

Instance Method Details

#eql?(other) ⇒ Boolean Also known as: ==

Returns:

  • (Boolean)


18
19
20
21
22
# File 'lib/arel/nodes/casted.rb', line 18

def eql? other
  self.class == other.class &&
      self.val == other.val &&
      self.attribute == other.attribute
end

#hashObject



14
15
16
# File 'lib/arel/nodes/casted.rb', line 14

def hash
  [self.class, val, attribute].hash
end

#nil?Boolean

Returns:

  • (Boolean)


12
# File 'lib/arel/nodes/casted.rb', line 12

def nil?; @val.nil?; end