@@ -31,6 +31,21 @@ class AroundBlock < Base
3131 MSG_UNUSED_ARG = 'You should call `%<arg>s.call` ' \
3232 'or `%<arg>s.run`.'
3333
34+ # @!method hook_block(node)
35+ def_node_matcher :hook_block , <<~PATTERN
36+ (block (send nil? :around sym ?) (args $...) ...)
37+ PATTERN
38+
39+ # @!method hook_numblock(node)
40+ def_node_matcher :hook_numblock , <<~PATTERN
41+ (numblock (send nil? :around sym ?) ...)
42+ PATTERN
43+
44+ # @!method find_arg_usage(node)
45+ def_node_search :find_arg_usage , <<~PATTERN
46+ {(send $... {:call :run}) (send _ _ $...) (yield $...) (block-pass $...)}
47+ PATTERN
48+
3449 def on_block ( node )
3550 hook_block ( node ) do |( example_proxy ) |
3651 if example_proxy . nil?
@@ -49,21 +64,6 @@ def on_numblock(node)
4964
5065 private
5166
52- # @!method hook_block(node)
53- def_node_matcher :hook_block , <<~PATTERN
54- (block (send nil? :around sym ?) (args $...) ...)
55- PATTERN
56-
57- # @!method hook_numblock(node)
58- def_node_matcher :hook_numblock , <<~PATTERN
59- (numblock (send nil? :around sym ?) ...)
60- PATTERN
61-
62- # @!method find_arg_usage(node)
63- def_node_search :find_arg_usage , <<~PATTERN
64- {(send $... {:call :run}) (send _ _ $...) (yield $...) (block-pass $...)}
65- PATTERN
66-
6767 def add_no_arg_offense ( node )
6868 add_offense ( node , message : MSG_NO_ARG )
6969 end
0 commit comments