# File lib/puppet/parser/ast/relationship.rb, line 16
16:   def evaluate(scope)
17:     if chained?
18:       real_left = left.safeevaluate(scope)
19:       left_dep = left_dep.shift if left_dep.is_a?(Array)
20:     else
21:       real_left = left.safeevaluate(scope)
22:     end
23:     real_right = right.safeevaluate(scope)
24: 
25:     source, target = sides2edge(real_left, real_right)
26:     result = Puppet::Parser::Relationship.new(source, target, type)
27:     scope.compiler.add_relationship(result)
28:     real_right
29:   end