Sha256: 3cd8eec8f3189064182b536120860cc7f0a5f3b760c2f58d859cf7d087aa8d3b

Contents?: true

Size: 588 Bytes

Versions: 20

Compression:

Stored size: 588 Bytes

Contents

module ActiveSupport
  module MarshalWithAutoloading # :nodoc:
    def load(source)
      super(source)
    rescue ArgumentError, NameError => exc
      if exc.message.match(%r|undefined class/module (.+?)(?:::)?\z|)
        # try loading the class/module
        loaded = $1.constantize

        raise unless $1 == loaded.name

        # if it is an IO we need to go back to read the object
        source.rewind if source.respond_to?(:rewind)
        retry
      else
        raise exc
      end
    end
  end
end

Marshal.singleton_class.prepend(ActiveSupport::MarshalWithAutoloading)

Version data entries

20 entries across 19 versions & 4 rubygems

Version Path
activesupport-5.1.0.beta1 lib/active_support/core_ext/marshal.rb
autocompl-0.2.2 test/dummy/vendor/bundle/ruby/2.3.0/gems/activesupport-5.0.1/lib/active_support/core_ext/marshal.rb
autocompl-0.2.1 test/dummy/vendor/bundle/ruby/2.3.0/gems/activesupport-5.0.1/lib/active_support/core_ext/marshal.rb
autocompl-0.2.0 test/dummy/vendor/bundle/ruby/2.3.0/gems/activesupport-5.0.1/lib/active_support/core_ext/marshal.rb
autocompl-0.1.2 test/dummy/vendor/bundle/ruby/2.3.0/gems/activesupport-5.0.1/lib/active_support/core_ext/marshal.rb
autocompl-0.1.1 test/dummy/vendor/bundle/ruby/2.3.0/gems/activesupport-5.0.1/lib/active_support/core_ext/marshal.rb
autocompl-0.1.0 test/dummy/vendor/bundle/ruby/2.3.0/gems/activesupport-5.0.1/lib/active_support/core_ext/marshal.rb
autocompl-0.0.1 test/dummy/vendor/bundle/ruby/2.3.0/gems/activesupport-5.0.1/lib/active_support/core_ext/marshal.rb
abaci-0.3.0 vendor/bundle/gems/activesupport-5.0.0/lib/active_support/core_ext/marshal.rb
abaci-0.3.0 vendor/bundle/gems/activesupport-5.0.1/lib/active_support/core_ext/marshal.rb
activesupport-5.0.1 lib/active_support/core_ext/marshal.rb
activesupport-5.0.1.rc2 lib/active_support/core_ext/marshal.rb
activesupport-5.0.1.rc1 lib/active_support/core_ext/marshal.rb
second_step-0.1.2 secondstep-notify-1.0.0-osx/lib/ruby/lib/ruby/gems/2.2.0/gems/activesupport-5.0.0.1/lib/active_support/core_ext/marshal.rb
activesupport-5.0.0.1 lib/active_support/core_ext/marshal.rb
activesupport-5.0.0 lib/active_support/core_ext/marshal.rb
activesupport-5.0.0.rc2 lib/active_support/core_ext/marshal.rb
activesupport-5.0.0.racecar1 lib/active_support/core_ext/marshal.rb
activesupport-5.0.0.rc1 lib/active_support/core_ext/marshal.rb
activesupport-5.0.0.beta4 lib/active_support/core_ext/marshal.rb