Module: Torque::PostgreSQL::Arel::Visitors
- Defined in:
- lib/torque/postgresql/arel/visitors.rb
Instance Method Summary collapse
-
#visit_Arel_Nodes_Casted(o, collector) ⇒ Object
Allow quoted arrays to get here.
-
#visit_Arel_Nodes_JoinSource(o, collector) ⇒ Object
Add ONLY modifier to query.
-
#visit_Arel_Nodes_Quoted(o, collector) ⇒ Object
Allow quoted arrays to get here.
-
#visit_Torque_PostgreSQL_Arel_Nodes_Cast(o, collector) ⇒ Object
Allow casting any node.
-
#visit_Torque_PostgreSQL_Arel_Nodes_Ref(o, collector) ⇒ Object
TORQUE VISITORS.
Instance Method Details
#visit_Arel_Nodes_Casted(o, collector) ⇒ Object
Allow quoted arrays to get here
20 21 22 23 24 25 |
# File 'lib/torque/postgresql/arel/visitors.rb', line 20 def visit_Arel_Nodes_Casted(o, collector) value = o.value_for_database klass = ActiveRecord::ConnectionAdapters::PostgreSQL::OID::Array::Data return super unless value.is_a?(klass) quote_array(value.values, collector) end |
#visit_Arel_Nodes_JoinSource(o, collector) ⇒ Object
Add ONLY modifier to query
8 9 10 11 |
# File 'lib/torque/postgresql/arel/visitors.rb', line 8 def visit_Arel_Nodes_JoinSource(o, collector) collector << 'ONLY ' if o.only? super end |
#visit_Arel_Nodes_Quoted(o, collector) ⇒ Object
Allow quoted arrays to get here
14 15 16 17 |
# File 'lib/torque/postgresql/arel/visitors.rb', line 14 def visit_Arel_Nodes_Quoted(o, collector) return super unless o.expr.is_a?(::Enumerable) quote_array(o.expr, collector) end |
#visit_Torque_PostgreSQL_Arel_Nodes_Cast(o, collector) ⇒ Object
Allow casting any node
33 34 35 |
# File 'lib/torque/postgresql/arel/visitors.rb', line 33 def visit_Torque_PostgreSQL_Arel_Nodes_Cast(o, collector) visit(o.left, collector) << '::' << o.right end |
#visit_Torque_PostgreSQL_Arel_Nodes_Ref(o, collector) ⇒ Object
TORQUE VISITORS
28 29 30 |
# File 'lib/torque/postgresql/arel/visitors.rb', line 28 def visit_Torque_PostgreSQL_Arel_Nodes_Ref(o, collector) collector << quote_table_name(o.expr) end |