node_query 1.13.3 → 1.13.5

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: '09b566f97aa10b9630187ef0dee3b703480eb01347a44d799295c8a8d1111dcd'
4
- data.tar.gz: a68b6f479e49aad2bf8dd7e3e03d4a53f0e7fe3c21dd77d7b9ac5adee3c1408b
3
+ metadata.gz: a813be8532c9248503efccc43a4c42d3d6313744f72b5196611510acdd43bf2e
4
+ data.tar.gz: ae1d48b6cafc9f89037ebafee3233c7b96cc0e0229475496a0ddb9bee6f7d8b4
5
5
  SHA512:
6
- metadata.gz: c8eefe2252d378dceaae5dc878c3383e6c48004888440e0a7b87c93a70c168ba6ed102c84adac60426b922727d455270f23f95abc88d21a008f4aa6527e01315
7
- data.tar.gz: 5996c60bd2df1bec0660b2468924a77f50b06e53d7206d09caaa723e3b06d82dab1ffc4133bdc0fe46c3e521a5c278b24f0cd9e584ae12e01ff05896a512aa21
6
+ metadata.gz: a26f3812969af8538cf399c5213e12d6f8328b6099caefd120e56d279c2d6ce7b4dceceb7c57252ab4699d7a34ab498a08322f687918533ce64c093895466908
7
+ data.tar.gz: ddf9e451cc4c6dc52c2e4e5635108bfc8cbb19a2f4455c02cd6e0db6737a4ce2b59b263d341f9ee5dfc07b97a65061ef1b41b4c00c905d134558e9037f6ddd47
data/CHANGELOG.md CHANGED
@@ -1,5 +1,14 @@
1
1
  # CHANGELOG
2
2
 
3
+ ## 1.13.5 (2023-06-17)
4
+
5
+ * Separate syntax_tree tests from parser tests
6
+ * Flatten child iteration for syntax_tree
7
+
8
+ ## 1.13.4 (2023-06-15)
9
+
10
+ * Support `Hash#except` for ruby 2
11
+
3
12
  ## 1.13.3 (2023-06-14)
4
13
 
5
14
  * Use `deconstruct_key` to get syntax_tree node children
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- node_query (1.13.3)
4
+ node_query (1.13.5)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -3,6 +3,14 @@
3
3
  require 'syntax_tree'
4
4
  require 'syntax_tree_ext'
5
5
 
6
+ if RUBY_VERSION.to_i < 3
7
+ class Hash
8
+ def except(*keys)
9
+ self.reject { |k, _| keys.include?(k) }
10
+ end
11
+ end
12
+ end
13
+
6
14
  class NodeQuery::SyntaxTreeAdapter
7
15
  def is_node?(node)
8
16
  node.is_a?(SyntaxTree::Node)
@@ -154,7 +154,11 @@ module NodeQuery::Compiler
154
154
  end
155
155
  else
156
156
  NodeQuery.adapter.get_children(node).each do |child_node|
157
- if NodeQuery.adapter.is_node?(child_node) && :begin == NodeQuery.adapter.get_node_type(child_node)
157
+ if child_node.is_a?(Array) # SyntaxTree may return an array in child node.
158
+ child_node.each do |child_child_node|
159
+ nodes << child_child_node if @rest.match?(child_child_node, child_child_node)
160
+ end
161
+ elsif NodeQuery.adapter.is_node?(child_node) && :begin == NodeQuery.adapter.get_node_type(child_node)
158
162
  NodeQuery.adapter.get_children(child_node).each do |child_child_node|
159
163
  nodes << child_child_node if @rest.match?(child_child_node, child_child_node)
160
164
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  class NodeQuery
4
- VERSION = "1.13.3"
4
+ VERSION = "1.13.5"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: node_query
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.13.3
4
+ version: 1.13.5
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-14 00:00:00.000000000 Z
11
+ date: 2023-06-17 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: ast node query language
14
14
  email: