Sha256: ae1b38965ab1eaa083f5494ef50aa21d494c1a0ca782cb7e96f4496aa669594a

Contents?: true

Size: 474 Bytes

Versions: 37

Compression:

Stored size: 474 Bytes

Contents

module RailsAdminSettings
  # we are inheriting from BasicObject so we don't get a bunch of methods from
  # Kernel or Object
  class Fallback < BasicObject
    def initialize(ns, fb)
      @ns = ns
      @fb = fb
    end

    def inspect
      "#<RailsAdminSettings::Fallback ns: #{@ns.inspect}, fb: #{@fb.inspect}>"
    end

    def method_missing(*args)
      @ns.ns_mutex.synchronize do
        @ns.fallback = @fb
        @ns.__send__(*args)
      end
    end
  end
end

Version data entries

37 entries across 37 versions & 1 rubygems

Version Path
rails_admin_settings-1.7.0 lib/rails_admin_settings/fallback.rb
rails_admin_settings-1.6.0 lib/rails_admin_settings/fallback.rb
rails_admin_settings-1.5.1 lib/rails_admin_settings/fallback.rb
rails_admin_settings-1.5.0 lib/rails_admin_settings/fallback.rb
rails_admin_settings-1.4.2 lib/rails_admin_settings/fallback.rb
rails_admin_settings-1.4.1 lib/rails_admin_settings/fallback.rb
rails_admin_settings-1.4.0 lib/rails_admin_settings/fallback.rb
rails_admin_settings-1.3.2 lib/rails_admin_settings/fallback.rb
rails_admin_settings-1.3.1 lib/rails_admin_settings/fallback.rb
rails_admin_settings-1.3.0 lib/rails_admin_settings/fallback.rb
rails_admin_settings-1.2.1 lib/rails_admin_settings/fallback.rb
rails_admin_settings-1.2.0 lib/rails_admin_settings/fallback.rb
rails_admin_settings-1.1.4 lib/rails_admin_settings/fallback.rb
rails_admin_settings-1.1.3 lib/rails_admin_settings/fallback.rb
rails_admin_settings-1.1.2 lib/rails_admin_settings/fallback.rb
rails_admin_settings-1.1.0.pre.1 lib/rails_admin_settings/fallback.rb
rails_admin_settings-1.0.1 lib/rails_admin_settings/fallback.rb
rails_admin_settings-1.0.0 lib/rails_admin_settings/fallback.rb
rails_admin_settings-1.0.0.pre.1 lib/rails_admin_settings/fallback.rb
rails_admin_settings-0.9.1 lib/rails_admin_settings/fallback.rb