428: def self.edge_from_pson(result, edge)
429:
430:
431: edge = Puppet::Relationship.from_pson(edge) if edge.is_a?(Hash)
432: unless source = result.resource(edge.source)
433: raise ArgumentError, "Could not convert from pson: Could not find relationship source '%s'" % source
434: end
435: edge.source = source
436:
437: unless target = result.resource(edge.target)
438: raise ArgumentError, "Could not convert from pson: Could not find relationship target '%s'" % target
439: end
440: edge.target = target
441:
442: result.add_edge(edge)
443: end