# File lib/soap/mapping/mapping.rb, line 133 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[:SOAPMarshalDataKey][target.id] and !Thread.current[:SOAPMarshalNoReference] return referent else return _soap2obj(target, registry, klass) end end return registry.soap2obj(node, klass) end