Sha256: 778471cc685bdc536c1309143c0b9840ca36ce3190201cbaceb4c7e84806b1a3
Contents?: true
Size: 662 Bytes
Versions: 5
Compression:
Stored size: 662 Bytes
Contents
require 'arel/visitors/compat' module Arel module Visitors class Firebird < Arel::Visitors::ToSql def visit_Arel_Nodes_SelectStatement o, a = nil lim_off = [ ("FIRST #{do_visit o.limit.expr, a}" if o.limit), ("SKIP #{do_visit o.offset.expr, a}" if o.offset) ].compact.join(' ').strip sql = [ o.cores.map { |x| visit_Arel_Nodes_SelectCore x }.join, ("ORDER BY #{o.orders.map { |x| do_visit x, a }.join(', ')}" unless o.orders.empty?), ].compact.join ' ' sql.sub!(/\A(\s*SELECT\s)/i, '\&' + lim_off + ' ') unless lim_off.empty? sql end end end end
Version data entries
5 entries across 5 versions & 1 rubygems