This module is used for safely loading Marshal
specs from a gem. The ‘safe_load` method defined on this module is specifically designed for loading Gem specifications.
Namespace
- MODULE Gem::SafeMarshal::Elements
- MODULE Gem::SafeMarshal::Visitors
- CLASS Gem::SafeMarshal::Reader
Methods
Class Public methods
load(input, permitted_classes: [::Symbol], permitted_symbols: [], permitted_ivars: {}) Link
# File ruby/lib/rubygems/safe_marshal.rb, line 64 def self.load(input, permitted_classes: [::Symbol], permitted_symbols: [], permitted_ivars: {}) root = Reader.new(StringIO.new(input, "r").binmode).read! Visitors::ToRuby.new( permitted_classes: permitted_classes, permitted_symbols: permitted_symbols, permitted_ivars: permitted_ivars, ).visit(root) end