# File lib/graphviz.rb, line 121
121:   def add_edge( oNodeOne, oNodeTwo, *hOpt )
122:     
123:     if( oNodeOne.class == Array ) 
124:       oNodeOne.each do |no|
125:         add_edge( no, oNodeTwo, *hOpt )
126:       end
127:     else
128:       if( oNodeTwo.class == Array )
129:         oNodeTwo.each do |nt|
130:           add_edge( oNodeOne, nt, *hOpt )
131:         end
132:       else
133: 
134:         oEdge = GraphViz::Edge::new( oNodeOne, oNodeTwo, self )
135:         
136:         if hOpt.nil? == false and hOpt[0].nil? == false
137:           hOpt[0].each do |xKey, xValue|
138:             oEdge[xKey.to_s] = xValue
139:           end
140:         end
141: 
142:         @elements_order.push( { 
143:           "type" => "edge", 
144:           "value" => oEdge
145:         } )
146:         @loEdges.push( oEdge )
147:         
148:         return( oEdge )
149:       end
150:     end
151:   end