lib/rgraph/link.rb in rgraph-0.0.9 vs lib/rgraph/link.rb in rgraph-0.0.10

- old
+ new

@@ -1,21 +1,22 @@ class Link - attr_accessor :source, :target + attr_accessor :source, :target, :type def initialize(arg) @args = arg @source = @args.delete(:source) @target = @args.delete(:target) + @type = @args.delete(:type) || 'undirected' raise Exception.new("source cant be nil") unless @source raise Exception.new("target cant be nil") unless @target raise Exception.new("source must be of type Node") unless @source.is_a? Node raise Exception.new("target must be of type Node") unless @target.is_a? Node @args[:weight] ||= 1 @source.neighbours << @target - @target.neighbours << @source + @target.neighbours << @source unless @type == 'directed' end def method_missing(name, *args) super unless args.empty? @args[name]