Sha256: c5ee677c904626c40a75ae32e954bbdc999de09627d7f0ca2a8c3b5ea30b7144

Contents?: true

Size: 507 Bytes

Versions: 2

Compression:

Stored size: 507 Bytes

Contents

module ActiveRecord
  module MTI
    module Calculations

      private

      def perform_calculation(*args)
        swap_and_restore_tableoid_cast(true) do
          super
        end
      end

      def swap_and_restore_tableoid_cast(value)
        orignal_value = Thread.current['skip_tableoid_cast']
        Thread.current['skip_tableoid_cast'] = value
        return_value = yield if block_given?
      ensure
        Thread.current['skip_tableoid_cast'] = orignal_value
      end

    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
active_record-mti-0.3.2 lib/active_record/mti/calculations.rb
active_record-mti-0.3.0.pre.rc4 lib/active_record/mti/calculations.rb