# File lib/soap/mapping/mapping.rb, line 137 def self._soap2obj(node, registry, klass = nil) if node.nil? return nil elsif node.is_a?(SOAPReference) target = node.__getobj__ # target.id is not Object#id but SOAPReference#id if referent = Thread.current[:SOAPMapping][:MarshalKey][target.id] and !Thread.current[:SOAPMapping][:NoReference] return referent else return _soap2obj(target, registry, klass) end end return registry.soap2obj(node, klass) end