]> source.dussan.org Git - sonarqube.git/blob
926f5be6eec8ad31365e31efc0234ff75e799bfa
[sonarqube.git] /
1 require 'arel/visitors/compat'
2
3 module Arel
4   module Visitors
5     class DB2 < Arel::Visitors::ToSql
6       def visit_Arel_Nodes_SelectStatement o
7         add_limit_offset([o.cores.map { |x| visit_Arel_Nodes_SelectCore x }.join,
8          ("ORDER BY #{o.orders.map { |x| visit x }.join(', ')}" unless o.orders.empty?),
9         ].compact.join(' '), o)
10       end
11
12       def add_limit_offset(sql, o)
13         @connection.replace_limit_offset! sql, limit_for(o.limit), o.offset && o.offset.value
14       end
15     end
16   end
17 end