Sha256: da0d8db924adad6aabac950008aba48291ecaeb88e975d33a5c139808e6ed1f4
Contents?: true
Size: 1.01 KB
Versions: 3
Compression:
Stored size: 1.01 KB
Contents
require 'arel/visitors/visitor' require 'arel/visitors/to_sql' require 'arel/visitors/sqlite' require 'arel/visitors/postgresql' require 'arel/visitors/mysql' require 'arel/visitors/oracle' require 'arel/visitors/join_sql' require 'arel/visitors/where_sql' require 'arel/visitors/order_clauses' require 'arel/visitors/dot' module Arel module Visitors VISITORS = { 'postgresql' => Arel::Visitors::PostgreSQL, 'mysql' => Arel::Visitors::MySQL, 'mysql2' => Arel::Visitors::MySQL, 'oracle_enhanced' => Arel::Visitors::Oracle, 'sqlite' => Arel::Visitors::SQLite, 'sqlite3' => Arel::Visitors::SQLite, } ENGINE_VISITORS = Hash.new do |hash, engine| pool = engine.connection_pool adapter = pool.spec.config[:adapter] hash[engine] = (VISITORS[adapter] || Visitors::ToSql).new(engine) end def self.visitor_for engine ENGINE_VISITORS[engine] end class << self; alias :for :visitor_for; end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
arel-2.0.4 | lib/arel/visitors.rb |
arel-2.0.3 | lib/arel/visitors.rb |
arel-2.0.2 | lib/arel/visitors.rb |