method

load_with_autoloading

Importance_0
v4.2.9 - Show latest stable - 0 notes - Class: Marshal
load_with_autoloading(source, proc = nil) public

No documentation

This method has no description. You can help the Ruby on Rails community by adding new notes.

Hide source
# File activesupport/lib/active_support/core_ext/marshal.rb, line 5
    def load_with_autoloading(source, proc = nil)
      load_without_autoloading(source, proc)
    rescue ArgumentError, NameError => exc
      if exc.message.match(%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
Register or log in to add new notes.