spoom 1.3.1 → 1.3.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: 3840a06d8381c113e452af8009c2e3c80f8c135c76afe1b1360baf877178d912
4
- data.tar.gz: 3c3941847f63693a3e184d3a24b583ba989769abc18d0bbf8a6b08481ee25ced
3
+ metadata.gz: bf02e50bf4a9482c7895022115de973e0be60b79cf781760cb8e6ecb48013eaf
4
+ data.tar.gz: 73ba081a87afdde5b57672b5a67ca860089506254a1b65fa5309ba28a7014bf3
5
5
  SHA512:
6
- metadata.gz: 23a45ede451ebffe973c1b262a68c667e5b8546c345520615262acef84c195e164b9cf6e7ff4223c569170802c5232366efa92c5525d5ba909606e8f51554cc3
7
- data.tar.gz: d3db42e6aeda62013aced699a86721e37b1fdb72162cd6475d512f77a7c810d3a693d9dfcc0c9b0871a19ef0d67ee7ea87b5188850bf98d441238f3a3aaca87b
6
+ metadata.gz: 19c39e380ddc81c38aaaf1b954232a4e068e88b14ad8a4690bb2810b62467578a3e836477c6d0c6db398eeec81a7d212e6b630b070f3b23c9990139a17ca0a60
7
+ data.tar.gz: ab920946c6ed779638788550f27b5c66ad1c1c21951d6cedc57b0a80fb58d7be094625d55b177e7c5479bfab9e24b733e10ec6f39de0039d3c80c98f45026514
@@ -564,7 +564,7 @@ module Spoom
564
564
  raise ParserError, "Error while parsing #{location.file}: #{message}"
565
565
  end
566
566
 
567
- visitor = new(location)
567
+ visitor = new(location, kind)
568
568
  visitor.visit(result.value)
569
569
 
570
570
  node = visitor.node
@@ -617,10 +617,11 @@ module Spoom
617
617
  sig { returns(T::Array[Prism::Node]) }
618
618
  attr_reader :nodes_nesting
619
619
 
620
- sig { params(location: Location).void }
621
- def initialize(location)
620
+ sig { params(location: Location, kind: T.nilable(Definition::Kind)).void }
621
+ def initialize(location, kind)
622
622
  super()
623
623
  @location = location
624
+ @kind = kind
624
625
  @node = T.let(nil, T.nilable(Prism::Node))
625
626
  @nodes_nesting = T.let([], T::Array[Prism::Node])
626
627
  end
@@ -635,6 +636,9 @@ module Spoom
635
636
  # We found the node we're looking for at `@location`
636
637
  @node = node
637
638
 
639
+ # The node we found matches the kind we're looking for, we can stop here
640
+ return if @kind && self.class.node_match_kind?(node, @kind)
641
+
638
642
  # There may be a more precise child inside the node that also matches `@location`, let's visit them
639
643
  @nodes_nesting << node
640
644
  super(node)
data/lib/spoom/version.rb CHANGED
@@ -2,5 +2,5 @@
2
2
  # frozen_string_literal: true
3
3
 
4
4
  module Spoom
5
- VERSION = "1.3.1"
5
+ VERSION = "1.3.2"
6
6
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spoom
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.1
4
+ version: 1.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alexandre Terrasa
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-04-30 00:00:00.000000000 Z
11
+ date: 2024-05-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler