Sha256: 6a36726a3290126594e9c4e37762f4c58249deda253d1bdae90e1cf0a8777fec

Contents?: true

Size: 766 Bytes

Versions: 33

Compression:

Stored size: 766 Bytes

Contents

require 'active_record/connection_adapters/abstract/schema_statements'

module Ridgepole
  module SchemaStatementsExt
    def index_name_exists?(table_name, column_name, default = nil)
      if Ridgepole::ExecuteExpander.noop
        caller_methods = caller.map {|i| i =~ /:\d+:in `(.+)'/ ? $1 : '' }
        if caller_methods.any? {|i| i =~ /\Aremove_index/ }
          true
        elsif caller_methods.any? {|i| i =~ /\Aadd_index/ }
          false
        else
          super
        end
      else
        super
      end
    end

    def rename_table_indexes(table_name, new_name)
      # Nothing to do
    end
  end
end

module ActiveRecord
  module ConnectionAdapters
    class AbstractAdapter
      prepend Ridgepole::SchemaStatementsExt
    end
  end
end

Version data entries

33 entries across 33 versions & 1 rubygems

Version Path
ridgepole-0.7.0.beta10 lib/ridgepole/schema_statements_ext.rb
ridgepole-0.7.0.beta9 lib/ridgepole/schema_statements_ext.rb
ridgepole-0.7.0.beta8 lib/ridgepole/schema_statements_ext.rb
ridgepole-0.7.0.beta7 lib/ridgepole/schema_statements_ext.rb
ridgepole-0.7.0.beta6 lib/ridgepole/schema_statements_ext.rb
ridgepole-0.7.0.beta5 lib/ridgepole/schema_statements_ext.rb
ridgepole-0.7.0.beta4 lib/ridgepole/schema_statements_ext.rb
ridgepole-0.7.0.beta3 lib/ridgepole/schema_statements_ext.rb
ridgepole-0.7.0.beta2 lib/ridgepole/schema_statements_ext.rb
ridgepole-0.7.0.beta lib/ridgepole/schema_statements_ext.rb
ridgepole-0.7.0.alpha3 lib/ridgepole/schema_statements_ext.rb
ridgepole-0.7.0.alpha2 lib/ridgepole/schema_statements_ext.rb
ridgepole-0.7.0.alpha lib/ridgepole/schema_statements_ext.rb