edge badge
Methods
L
Instance Public methods
load_with_autoloading(source)
# File activesupport/lib/active_support/core_ext/marshal.rb, line 5
def load_with_autoloading(source)
  load_without_autoloading(source)
rescue ArgumentError, NameError => exc
  if exc.message.match(%rundefined class/module (.+)|)
    # try loading the class/module
    $1.constantize
    # if it is a IO we need to go back to read the object
    source.rewind if source.respond_to?(:rewind)
    retry
  else
    raise exc
  end
end