Skip to content

Commit 44900ec

Browse files
committed
Removed duplicate method calls with Reek
1 parent 2b7d84b commit 44900ec

File tree

1 file changed

+24
-13
lines changed

1 file changed

+24
-13
lines changed

lib/interval_tree.rb

Lines changed: 24 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -82,17 +82,20 @@ def point_search(node, point, result, unique)
8282

8383
until stack.empty?
8484
node = stack.pop
85+
node_left_node = node.left_node
86+
node_right_node = node.right_node
87+
node_x_center = node.x_center
8588

8689
node.s_center.each do |k|
8790
break if k.begin > point
8891
result << k if point < k.end
8992
end
9093

91-
if node.left_node && ( point_r < node.x_center )
92-
stack << node.left_node
94+
if node_left_node && ( point_r < node_x_center )
95+
stack << node_left_node
9396

94-
elsif node.right_node && ( point_r >= node.x_center )
95-
stack << node.right_node
97+
elsif node_right_node && ( point_r >= node_x_center )
98+
stack << node_right_node
9699
end
97100

98101
end
@@ -133,25 +136,33 @@ def search_s_center(query)
133136
result = []
134137

135138
s_center.each do |k|
136-
break if k.begin > query.end
139+
k_begin = k.begin
140+
query_end = query.end
137141

142+
break if k_begin > query_end
143+
144+
k_end = k.end
145+
query_begin = query.begin
146+
147+
k_begin_gte_q_begin = k_begin >= query_begin
148+
k_end_lte_q_end = k_end <= query_end
138149
next unless
139150
(
140151
# k is entirely contained within the query
141-
(k.begin >= query.begin) &&
142-
(k.end <= query.end)
152+
(k_begin_gte_q_begin) &&
153+
(k_end_lte_q_end)
143154
) || (
144155
# k's start overlaps with the query
145-
(k.begin >= query.begin) &&
146-
(k.begin < query.end)
156+
(k_begin_gte_q_begin) &&
157+
(k_begin < query_end)
147158
) || (
148159
# k's end overlaps with the query
149-
(k.end > query.begin) &&
150-
(k.end <= query.end)
160+
(k_end > query_begin) &&
161+
(k_end_lte_q_end)
151162
) || (
152163
# k is bigger than the query
153-
(k.begin < query.begin) &&
154-
(k.end > query.end)
164+
(k_begin < query_begin) &&
165+
(k_end > query_end)
155166
)
156167
result << k
157168
end

0 commit comments

Comments
 (0)