method
load
v5.0.0.1 -
Show latest stable
- Class:
ActiveSupport::MarshalWithAutoloading
load(source)public
No documentation available.
# File activesupport/lib/active_support/core_ext/marshal.rb, line 3
def load(source)
super(source)
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