syntax_tree_ext 0.6.0 → 0.6.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ce3e3738a614af69fd2ca73be682d1516281057cacbf1995445b07bab29f3020
4
- data.tar.gz: f47da333553dcbf262cf53ae2685d999fda7a9a8800498b84b783ae0344e9365
3
+ metadata.gz: 05a2cd50808bce4efb80d3b03782548221a82ce170ad4c4c76384e237782e5fe
4
+ data.tar.gz: a9c7e46b6173218bc4034912bceb4ac51c475d32eed8cf780890bf6cda457fed
5
5
  SHA512:
6
- metadata.gz: dc2e4c15334228eccb81faa35fc93b3f068a5d0951e03f7e8ecaa352e0a76940b6af46fd2bdf6aa32d039d74515cd070aed220d61743b97ab0fa245967656e49
7
- data.tar.gz: 9c454a2b46e308630496ae20baca6adcadd5a7f70b2b9401068f3b3e9cd9a516412145c5a593543759f45e1aae540bf13365a97609643a4848baabf03beb6098
6
+ metadata.gz: 2c0dccd7b1d3ec301be8597a8a2ee1d560079c095446b5a7bfbcc593e459dc727f6e8e84b2d8020d038821468b45a65d87de35a5a10fc8ae6be426288c07eef1
7
+ data.tar.gz: '0586df50645994c34790843e412fd65986fbf039c87c6601a49dcd38195ba79bf9b532eb925cf1e78db0fbd28a787e7b77d19726fa938e0233424e6aae76ba32'
data/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # CHANGELOG
2
2
 
3
+ ## 0.6.2 (2024-06-26)
4
+
5
+ * Do not flatten `deconstruct_keys`.`values`
6
+
7
+ ## 0.6.1 (2024-06-26)
8
+
9
+ * Use `deconstruct_key`.`values` instead of `child_nodes`
10
+
3
11
  ## 0.6.0 (2024-06-12)
4
12
 
5
13
  * Add `hash_assoc` and `hash_value` for hash
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- syntax_tree_ext (0.6.0)
4
+ syntax_tree_ext (0.6.2)
5
5
  syntax_tree
6
6
 
7
7
  GEM
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module SyntaxTreeExt
4
- VERSION = "0.6.0"
4
+ VERSION = "0.6.2"
5
5
  end
@@ -25,7 +25,16 @@ module SyntaxTree
25
25
 
26
26
  def set_parent_node_and_source(source)
27
27
  self.source = source
28
- child_nodes.each do |child_node|
28
+ self.deconstruct_keys([]).except(:location, :comments).values.each do |child_node|
29
+ if child_node.is_a?(Array)
30
+ child_node.each do |child_child_node|
31
+ next unless child_child_node.is_a?(Node)
32
+
33
+ child_child_node.parent_node = self
34
+ child_child_node.set_parent_node_and_source(source)
35
+ end
36
+ end
37
+
29
38
  next unless child_node.is_a?(Node)
30
39
 
31
40
  child_node.parent_node = self
@@ -34,8 +43,14 @@ module SyntaxTree
34
43
  end
35
44
 
36
45
  def siblings
37
- index = parent_node.child_nodes.index(self)
38
- parent_node.child_nodes[index + 1...]
46
+ child_nodes = parent_node.deconstruct_keys([]).except(:location, :comments).values
47
+ if child_nodes.is_a?(Array) && child_nodes.size == 1 && child_nodes.first.is_a?(Array)
48
+ index = child_nodes.first.index(self)
49
+ return child_nodes.first[index + 1...]
50
+ end
51
+
52
+ index = child_nodes.index(self)
53
+ child_nodes[index + 1...]
39
54
  end
40
55
 
41
56
  def keys
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: syntax_tree_ext
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.0
4
+ version: 0.6.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Richard Huang
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-06-12 00:00:00.000000000 Z
11
+ date: 2023-06-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: syntax_tree