rbgraph 0.0.11 → 0.0.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/lib/rbgraph/graph.rb +9 -2
  4. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b7d54e0a6798c66bbdf2100e1f4e6126778614e1
4
- data.tar.gz: ace6a8ba9bfabea5c31b4203a63d01e4a1807749
3
+ metadata.gz: 00fbccd2d3d6d3581cc4f83a4e5a2558d75973fd
4
+ data.tar.gz: aa59996c09a895c62cc07771f41fb32230225eb1
5
5
  SHA512:
6
- metadata.gz: 3a07510e4fd9dcc379817e91b226234a955496d80d64bde4cfc73a61a8f27124da836a0cdcc33d34638e8f855f8440f12e4de1129a9bdc7ea7270f7b75c888bb
7
- data.tar.gz: a86f82fd3c4a9ea55ccf0fb0ebb3caba4d378f331121142187eecc07ec3d71dcbc218bbb4ccb0178331d7ec5e442acde8a0d09cf2eb720fccb3e0c99edff69c6
6
+ metadata.gz: 9357c46c09c8a6d354ad2c2f2f09b16f40997da435e1272ce897836ffc449ad91fbd798ed505269782d058befb1ccbf100ea47a25d69cacd3b830ff2b34e257b
7
+ data.tar.gz: fe0d188133e96de5f9be8c40ad4cbe53f0eaf3fa4e0e313c3ad10b2eb407eaeffb9df94c62fd41dfc7d71d653d69ab7bae074a31c1629a7bc0a8bc952fb634f3
data/README.md CHANGED
@@ -63,7 +63,7 @@ graph.add_edge!({id: 1}, {id: 2}, {weight: 3})
63
63
  graph.edges["1==2"].weight => 5
64
64
  ```
65
65
 
66
- Version 0.0.11+
66
+ Version 0.0.12+
67
67
 
68
68
  Support for node merging.
69
69
  ```ruby
data/lib/rbgraph/graph.rb CHANGED
@@ -59,8 +59,15 @@ module Rbgraph
59
59
  def merge_nodes!(node_ids, new_attrs = {})
60
60
  node_ids = node_ids.map { |node_id| nodes[node_id].nil? ? nil : node_id } .compact
61
61
  return nil if node_ids.empty?
62
- if new_attrs[:id].nil?
63
- new_node = nodes[node_ids.shift]
62
+ new_id = new_attrs[:id]
63
+ new_node = nil
64
+ if new_id.nil?
65
+ if nodes[new_id].nil?
66
+ new_node = nodes[node_ids.shift]
67
+ else
68
+ new_node = nodes[new_id]
69
+ node_ids.delete(new_id)
70
+ end
64
71
  new_node.merge(Node.new({id: 0}.merge(new_attrs)))
65
72
  else
66
73
  new_node = add_node!(new_attrs)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rbgraph
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.11
4
+ version: 0.0.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - George Lamprianidis