422: def self.edge_from_pson(result, edge)
423:
424:
425: edge = Puppet::Relationship.from_pson(edge) if edge.is_a?(Hash)
426: unless source = result.resource(edge.source)
427: raise ArgumentError, "Could not convert from pson: Could not find relationship source #{edge.source.inspect}"
428: end
429: edge.source = source
430:
431: unless target = result.resource(edge.target)
432: raise ArgumentError, "Could not convert from pson: Could not find relationship target #{edge.target.inspect}"
433: end
434: edge.target = target
435:
436: result.add_edge(edge)
437: end