audition 0.2.3 → 0.2.4

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: ba77f1a280ec256219a480d985cac86fcd01d00aec4911d07702f2f438a1fc84
4
- data.tar.gz: 0c8de9f61b8ba73ba10ed4dc23e9b38747a1a2294bbe8b91afeab9d4fe73c5ed
3
+ metadata.gz: 76a1b0c57c7a373182f7b9f88f765fa8e0167a492e28d028998335bc246c10d9
4
+ data.tar.gz: 2c5ecb49ed0a63ebd7a58cb3db9e8b5e8f9893953198d1c3e9f0cc5ca74cfb3a
5
5
  SHA512:
6
- metadata.gz: e4dbdf679a82d276997643106b7b1edc5bce15682be0238928a2c09868199cf2d025d5043e12d268bd60bb24f5452bd60497ade06a89dacf9a79fb8df5b015f7
7
- data.tar.gz: 76f66b352ffef939943de3efd477e998caeb28cc0dd084a8f614b962eb19a3696c0669937279d78419fb7830d56f70d65901f069fbc381903c2759bb575eebde
6
+ metadata.gz: 633d141cdc23a3e2e24df8b983b9112ffa9a759194669c4f9a6f62f0bf07219b507bd72cea8235de3c7193ab934c60ca8c98ee2095eabe21fad2e80f682ea8e2
7
+ data.tar.gz: bfd863839b4d5fbea291d22282487de79d261fd55bba5662d82d285e013827290257ca61d5b637000581453ec8f3a0510b1571bf6492d1b9f6f9e7de9f3af225
@@ -175,6 +175,7 @@ module Audition
175
175
  # a class or module body get the wrap.
176
176
  body = proc_body(value)
177
177
  wrappable = fix_ok && namespaced?(node) &&
178
+ !opaque_proc?(value) &&
178
179
  (body.nil? ||
179
180
  RactorIsolation::CaptureScanner
180
181
  .scan(body).empty?)
@@ -199,10 +200,16 @@ module Audition
199
200
  def proc_body(value)
200
201
  case value
201
202
  when Prism::LambdaNode then value.body
202
- when Prism::CallNode then value.block&.body
203
+ when Prism::CallNode
204
+ block = value.block
205
+ block.body if block.is_a?(Prism::BlockNode)
203
206
  end
204
207
  end
205
208
 
209
+ def opaque_proc?(value)
210
+ value.is_a?(Prism::CallNode) && value.block.is_a?(Prism::BlockArgumentNode)
211
+ end
212
+
206
213
  def namespaced?(node)
207
214
  offset = node.location.start_offset
208
215
  module_ranges.any? { |range| range.cover?(offset) }
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Audition
4
- VERSION = "0.2.3"
4
+ VERSION = "0.2.4"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: audition
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.3
4
+ version: 0.2.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yaroslav Markin