Sha256: 883c2b642feefac32a2866c585eec4d224035aee76498c844977e5d123df609b
Contents?: true
Size: 968 Bytes
Versions: 1
Compression:
Stored size: 968 Bytes
Contents
module Arel module Visitors class ToSql < Arel::Visitors::Visitor def visit_Arel_Nodes_AsMaterialized o, collector collector = visit o.left, collector collector << " AS MATERIALIZED " visit o.right, collector end def collect_ctes(children, collector) children.each_with_index do |child, i| collector << ", " unless i == 0 case child when Arel::Nodes::As, Arel::Nodes::AsMaterialized name = child.left.name relation = child.right when Arel::Nodes::TableAlias name = child.name relation = child.relation end collector << quote_table_name(name) if child.class == Arel::Nodes::AsMaterialized collector << " AS MATERIALIZED " else collector << " AS " end visit relation, collector end collector end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
postgres_with-3.0.1 | lib/postgres_with/arel/visitors/to_sql.rb |