class Gem::SafeMarshal::Visitors::Visitor
Constants
- DISPATCH
Public Instance Methods
Source
# File lib/rubygems/safe_marshal/visitors/visitor.rb, line 5 def visit(target) send DISPATCH.fetch(target.class), target end
Private Instance Methods
Source
# File lib/rubygems/safe_marshal/visitors/visitor.rb, line 24 def visit_Gem_SafeMarshal_Elements_Array(target) target.elements.each {|e| visit(e) } end
Source
# File lib/rubygems/safe_marshal/visitors/visitor.rb, line 28 def visit_Gem_SafeMarshal_Elements_Bignum(target); end
Source
# File lib/rubygems/safe_marshal/visitors/visitor.rb, line 29 def visit_Gem_SafeMarshal_Elements_False(target); end
Source
# File lib/rubygems/safe_marshal/visitors/visitor.rb, line 30 def visit_Gem_SafeMarshal_Elements_Float(target); end
Source
# File lib/rubygems/safe_marshal/visitors/visitor.rb, line 32 def visit_Gem_SafeMarshal_Elements_Hash(target) target.pairs.each do |k, v| visit(k) visit(v) end end
Source
# File lib/rubygems/safe_marshal/visitors/visitor.rb, line 39 def visit_Gem_SafeMarshal_Elements_HashWithDefaultValue(target) visit_Gem_SafeMarshal_Elements_Hash(target) visit(target.default) end
Source
# File lib/rubygems/safe_marshal/visitors/visitor.rb, line 44 def visit_Gem_SafeMarshal_Elements_Integer(target); end
Source
# File lib/rubygems/safe_marshal/visitors/visitor.rb, line 45 def visit_Gem_SafeMarshal_Elements_Nil(target); end
Source
# File lib/rubygems/safe_marshal/visitors/visitor.rb, line 47 def visit_Gem_SafeMarshal_Elements_Object(target) visit(target.name) end
Source
# File lib/rubygems/safe_marshal/visitors/visitor.rb, line 51 def visit_Gem_SafeMarshal_Elements_ObjectLink(target); end
Source
# File lib/rubygems/safe_marshal/visitors/visitor.rb, line 52 def visit_Gem_SafeMarshal_Elements_String(target); end
Source
# File lib/rubygems/safe_marshal/visitors/visitor.rb, line 53 def visit_Gem_SafeMarshal_Elements_Symbol(target); end
Source
# File lib/rubygems/safe_marshal/visitors/visitor.rb, line 54 def visit_Gem_SafeMarshal_Elements_SymbolLink(target); end
Source
# File lib/rubygems/safe_marshal/visitors/visitor.rb, line 55 def visit_Gem_SafeMarshal_Elements_True(target); end
Source
# File lib/rubygems/safe_marshal/visitors/visitor.rb, line 57 def visit_Gem_SafeMarshal_Elements_UserDefined(target) visit(target.name) end
Source
# File lib/rubygems/safe_marshal/visitors/visitor.rb, line 61 def visit_Gem_SafeMarshal_Elements_UserMarshal(target) visit(target.name) visit(target.data) end
Source
# File lib/rubygems/safe_marshal/visitors/visitor.rb, line 66 def visit_Gem_SafeMarshal_Elements_WithIvars(target) visit(target.object) target.ivars.each do |k, v| visit(k) visit(v) end end
Source
# File lib/rubygems/safe_marshal/visitors/visitor.rb, line 20 def visit_unknown_element(e) raise ArgumentError, "Attempting to visit unknown element #{e.inspect}" end