syntax_tree_ext 0.6.0 → 0.6.2

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.
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