Sha256: f6f0009f8308864327bb35d69a901d60438f31e1d5885bacaa366b1fcb21fbd1

Contents?: true

Size: 559 Bytes

Versions: 1

Compression:

Stored size: 559 Bytes

Contents

module Arel
  module Transformer
    class AddSchemaToTable
      attr_reader :schema_name

      def initialize(schema_name)
        @schema_name = schema_name
      end

      # https://github.com/mvgijssel/arel_toolkit/issues/110
      def call(arel, _context)
        tree = Arel.enhance(arel)

        tree.query(
          class: Arel::Table,
          schema_name: nil,
          context: { range_variable: true },
        ).each do |node|
          node['schema_name'].replace(schema_name)
        end

        tree.object
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
arel_toolkit-0.4.0 lib/arel/transformer/add_schema_to_table.rb