boost_info 0.2.7 → 0.2.8
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/boost_info/node.rb +11 -11
- data/lib/boost_info/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e2e439c3ddbbe9932a09a8a9cd87e2905717bd6d
|
4
|
+
data.tar.gz: 44a1a4627b360d0bcc5140183d7a9e83a5aeca0c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c862bdb79eccf182b371c6688515b61c1f25531fb44846720b49712226f590e90a3cd80e585342e5170bf2393cffcd554f1ac9221aa2986bcd5ce2d15293f3e5
|
7
|
+
data.tar.gz: 282b1c33205e36bee6830e018d99540b71a60fcfdf9da0a2d80f4f9d5e0c023ebf02c9d0ff6c75b5ad7606ced59586ced46f978eb70da279b74fccf5829b35db
|
data/lib/boost_info/node.rb
CHANGED
@@ -75,19 +75,21 @@ module BoostInfo
|
|
75
75
|
def create_path(path, params={})
|
76
76
|
return self if path.empty?
|
77
77
|
|
78
|
-
params[:force] =
|
78
|
+
params[:force] = true unless params.key?(:force)
|
79
79
|
|
80
80
|
current_node = self
|
81
81
|
path.each do |new_key|
|
82
82
|
existing_nodes = current_node.get(new_key)
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
83
|
+
current_node = if existing_nodes.empty?
|
84
|
+
current_node.insert(new_key, nil, params)
|
85
|
+
else
|
86
|
+
# force - использовать существующие ноды
|
87
|
+
if params[:force]
|
88
|
+
existing_nodes.first
|
89
|
+
else
|
90
|
+
current_node.insert(new_key, nil, params)
|
91
|
+
end
|
92
|
+
end
|
91
93
|
end
|
92
94
|
current_node
|
93
95
|
end
|
@@ -119,8 +121,6 @@ module BoostInfo
|
|
119
121
|
insert_node_before(params[:before], node)
|
120
122
|
elsif params[:prepend]
|
121
123
|
@childrens.unshift(node)
|
122
|
-
elsif params[:append]
|
123
|
-
@childrens.push(node)
|
124
124
|
else
|
125
125
|
@childrens << node
|
126
126
|
end
|
data/lib/boost_info/version.rb
CHANGED