rubocop-ast 1.32.0 → 1.32.3
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 +4 -4
- data/README.md +1 -1
- data/lib/rubocop/ast/node/def_node.rb +1 -1
- data/lib/rubocop/ast/node/ensure_node.rb +8 -0
- data/lib/rubocop/ast/node/mixin/collection_node.rb +1 -1
- data/lib/rubocop/ast/node_pattern/compiler.rb +1 -1
- data/lib/rubocop/ast/node_pattern/lexer.rex.rb +2 -1
- data/lib/rubocop/ast/node_pattern/node.rb +1 -1
- data/lib/rubocop/ast/node_pattern/parser.racc.rb +40 -42
- data/lib/rubocop/ast/node_pattern/parser.rb +1 -1
- data/lib/rubocop/ast/node_pattern.rb +1 -1
- data/lib/rubocop/ast/utilities/simple_forwardable.rb +16 -0
- data/lib/rubocop/ast/version.rb +1 -1
- data/lib/rubocop/ast.rb +1 -0
- metadata +4 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 289c6acb690241440018fb6d23e23759c6cf52100b2bf373b47226ee71cad215
|
4
|
+
data.tar.gz: 45cd10ff396ddf599ac11277b5d14a2e7cede79b267a40b2e53a83ccd2580479
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 137d5b737b87e1a136b23c6ae6b591334e5971e923c01727c37280b42e96a0a41fc534b54e8ea1b83074256b5d6645f86c079977fd72ffd6404d9f4eb61d92c6
|
7
|
+
data.tar.gz: d7c4e19d909f3591b4f7460a54e50f77555d37b517baa86359c635a2b32eeb119804464fb17c95adc69f23147f3023322142d44117f0e9ea0262e8c1fdd3aec2
|
data/README.md
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
# RuboCop AST
|
2
2
|
|
3
3
|
[](https://badge.fury.io/rb/rubocop-ast)
|
4
|
-
[](https://github.com/rubocop/rubocop-ast/actions/workflows/rubocop.yml)
|
5
5
|
[](https://codeclimate.com/github/rubocop/rubocop-ast/test_coverage)
|
6
6
|
[](https://codeclimate.com/github/rubocop/rubocop-ast/maintainability)
|
7
7
|
|
@@ -13,7 +13,7 @@ module RuboCop
|
|
13
13
|
#
|
14
14
|
# @return [Boolean] whether the `def` node body is a void context
|
15
15
|
def void_context?
|
16
|
-
method?(:initialize) || assignment_method?
|
16
|
+
(def_type? && method?(:initialize)) || assignment_method?
|
17
17
|
end
|
18
18
|
|
19
19
|
# Checks whether this method definition node forwards its arguments
|
@@ -12,6 +12,14 @@ module RuboCop
|
|
12
12
|
def body
|
13
13
|
node_parts[1]
|
14
14
|
end
|
15
|
+
|
16
|
+
# Checks whether this node body is a void context.
|
17
|
+
# Always `true` for `ensure`.
|
18
|
+
#
|
19
|
+
# @return [true] whether the `ensure` node body is a void context
|
20
|
+
def void_context?
|
21
|
+
true
|
22
|
+
end
|
15
23
|
end
|
16
24
|
end
|
17
25
|
end
|
@@ -9,7 +9,7 @@ module RuboCop
|
|
9
9
|
# Doc on how this fits in the compiling process:
|
10
10
|
# /docs/modules/ROOT/pages/node_pattern.adoc
|
11
11
|
class Compiler
|
12
|
-
extend
|
12
|
+
extend SimpleForwardable
|
13
13
|
attr_reader :captures, :named_parameters, :positional_parameters, :binding
|
14
14
|
|
15
15
|
def initialize
|
@@ -2,7 +2,7 @@
|
|
2
2
|
# encoding: UTF-8
|
3
3
|
#--
|
4
4
|
# This file is automatically generated. Do not modify it.
|
5
|
-
# Generated by: oedipus_lex version 2.6.
|
5
|
+
# Generated by: oedipus_lex version 2.6.0.
|
6
6
|
# Source: lib/rubocop/ast/node_pattern/lexer.rex
|
7
7
|
#++
|
8
8
|
|
@@ -70,6 +70,7 @@ class RuboCop::AST::NodePattern::LexerRex
|
|
70
70
|
yield
|
71
71
|
end
|
72
72
|
|
73
|
+
|
73
74
|
##
|
74
75
|
# The current scanner class. Must be overridden in subclasses.
|
75
76
|
|
@@ -5,7 +5,7 @@ module RuboCop
|
|
5
5
|
class NodePattern
|
6
6
|
# Base class for AST Nodes of a `NodePattern`
|
7
7
|
class Node < ::Parser::AST::Node
|
8
|
-
extend
|
8
|
+
extend SimpleForwardable
|
9
9
|
include ::RuboCop::AST::Descendence
|
10
10
|
|
11
11
|
MATCHES_WITHIN_SET = %i[symbol number string].to_set.freeze
|
@@ -1,8 +1,8 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
#
|
3
3
|
# DO NOT MODIFY!!!!
|
4
|
-
# This file is automatically generated by Racc 1.
|
5
|
-
# from Racc grammar file "
|
4
|
+
# This file is automatically generated by Racc 1.5.0
|
5
|
+
# from Racc grammar file "".
|
6
6
|
#
|
7
7
|
|
8
8
|
require 'racc/parser.rb'
|
@@ -14,15 +14,15 @@ module RuboCop
|
|
14
14
|
|
15
15
|
racc_action_table = [
|
16
16
|
14, 15, 16, 21, 18, 17, 19, 10, 11, 12,
|
17
|
-
60, 22, 20, 4,
|
18
|
-
28, 23, 56, 50,
|
17
|
+
60, 22, 20, 4, 40, 5, 43, 6, 7, 8,
|
18
|
+
28, 23, 56, 50, 66, 61, 24, 51, 51, 40,
|
19
19
|
58, 14, 15, 16, 21, 18, 17, 19, 10, 11,
|
20
20
|
12, nil, 22, 20, 4, nil, 5, nil, 6, 7,
|
21
21
|
8, 28, 23, nil, nil, -34, 14, 15, 16, 21,
|
22
22
|
18, 17, 19, 10, 11, 12, nil, 22, 20, 4,
|
23
23
|
nil, 5, nil, 6, 7, 8, 9, 23, 14, 15,
|
24
24
|
16, 21, 18, 17, 19, 10, 11, 12, nil, 22,
|
25
|
-
20, 4, nil, 5, nil, 6, 7, 8,
|
25
|
+
20, 4, nil, 5, nil, 6, 7, 8, 9, 23,
|
26
26
|
14, 15, 16, 21, 18, 17, 19, 10, 11, 12,
|
27
27
|
nil, 22, 20, 4, nil, 5, nil, 6, 7, 8,
|
28
28
|
9, 23, 14, 15, 16, 21, 18, 17, 19, 10,
|
@@ -33,7 +33,7 @@ racc_action_table = [
|
|
33
33
|
18, 17, 19, 10, 11, 12, nil, 22, 20, 4,
|
34
34
|
nil, 5, nil, 6, 7, 8, 9, 23, 14, 15,
|
35
35
|
16, 21, 18, 17, 19, 10, 11, 12, nil, 22,
|
36
|
-
20, 4, nil, 5, nil, 6, 7, 8,
|
36
|
+
20, 4, nil, 5, nil, 6, 7, 8, 28, 23,
|
37
37
|
14, 15, 16, 21, 18, 17, 19, 10, 11, 12,
|
38
38
|
nil, 22, 20, 4, 44, 5, nil, 6, 7, 8,
|
39
39
|
28, 23, 14, 15, 16, 21, 18, 17, 19, 10,
|
@@ -47,31 +47,31 @@ racc_action_table = [
|
|
47
47
|
20, 4, nil, 5, nil, 6, 7, 8, 9, 23,
|
48
48
|
14, 15, 16, 21, 18, 17, 19, 10, 11, 12,
|
49
49
|
nil, 22, 20, 4, nil, 5, nil, 6, 7, 8,
|
50
|
-
9, 23,
|
51
|
-
|
50
|
+
9, 23, 47, 48, 49, -1, -1, -1, -2, -2,
|
51
|
+
-2 ]
|
52
52
|
|
53
53
|
racc_action_check = [
|
54
54
|
42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
|
55
|
-
54, 42, 42, 42,
|
56
|
-
42, 42, 42, 30,
|
55
|
+
54, 42, 42, 42, 11, 42, 24, 42, 42, 42,
|
56
|
+
42, 42, 42, 30, 62, 54, 1, 63, 30, 10,
|
57
57
|
42, 59, 59, 59, 59, 59, 59, 59, 59, 59,
|
58
58
|
59, nil, 59, 59, 59, nil, 59, nil, 59, 59,
|
59
|
-
59, 59, 59, nil, nil, 59,
|
59
|
+
59, 59, 59, nil, nil, 59, 5, 5, 5, 5,
|
60
|
+
5, 5, 5, 5, 5, 5, nil, 5, 5, 5,
|
61
|
+
nil, 5, nil, 5, 5, 5, 5, 5, 6, 6,
|
62
|
+
6, 6, 6, 6, 6, 6, 6, 6, nil, 6,
|
63
|
+
6, 6, nil, 6, nil, 6, 6, 6, 6, 6,
|
64
|
+
7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
|
65
|
+
nil, 7, 7, 7, nil, 7, nil, 7, 7, 7,
|
66
|
+
7, 7, 8, 8, 8, 8, 8, 8, 8, 8,
|
67
|
+
8, 8, nil, 8, 8, 8, nil, 8, nil, 8,
|
68
|
+
8, 8, 8, 8, 9, 9, 9, 9, 9, 9,
|
69
|
+
9, 9, 9, 9, nil, 9, 9, 9, nil, 9,
|
70
|
+
nil, 9, 9, 9, 9, 9, 0, 0, 0, 0,
|
60
71
|
0, 0, 0, 0, 0, 0, nil, 0, 0, 0,
|
61
72
|
nil, 0, nil, 0, 0, 0, 0, 0, 4, 4,
|
62
73
|
4, 4, 4, 4, 4, 4, 4, 4, nil, 4,
|
63
74
|
4, 4, nil, 4, nil, 4, 4, 4, 4, 4,
|
64
|
-
5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
|
65
|
-
nil, 5, 5, 5, nil, 5, nil, 5, 5, 5,
|
66
|
-
5, 5, 6, 6, 6, 6, 6, 6, 6, 6,
|
67
|
-
6, 6, nil, 6, 6, 6, nil, 6, nil, 6,
|
68
|
-
6, 6, 6, 6, 7, 7, 7, 7, 7, 7,
|
69
|
-
7, 7, 7, 7, nil, 7, 7, 7, nil, 7,
|
70
|
-
nil, 7, 7, 7, 7, 7, 8, 8, 8, 8,
|
71
|
-
8, 8, 8, 8, 8, 8, nil, 8, 8, 8,
|
72
|
-
nil, 8, nil, 8, 8, 8, 8, 8, 9, 9,
|
73
|
-
9, 9, 9, 9, 9, 9, 9, 9, nil, 9,
|
74
|
-
9, 9, nil, 9, nil, 9, 9, 9, 9, 9,
|
75
75
|
27, 27, 27, 27, 27, 27, 27, 27, 27, 27,
|
76
76
|
nil, 27, 27, 27, 27, 27, nil, 27, 27, 27,
|
77
77
|
27, 27, 28, 28, 28, 28, 28, 28, 28, 28,
|
@@ -85,17 +85,17 @@ racc_action_check = [
|
|
85
85
|
50, 50, nil, 50, nil, 50, 50, 50, 50, 50,
|
86
86
|
61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
|
87
87
|
nil, 61, 61, 61, nil, 61, nil, 61, 61, 61,
|
88
|
-
61, 61,
|
89
|
-
|
88
|
+
61, 61, 29, 29, 29, 25, 25, 25, 26, 26,
|
89
|
+
26 ]
|
90
90
|
|
91
91
|
racc_action_pointer = [
|
92
|
-
|
93
|
-
|
94
|
-
nil, nil, nil, nil,
|
92
|
+
164, 26, nil, nil, 186, 54, 76, 98, 120, 142,
|
93
|
+
17, 2, nil, nil, nil, nil, nil, nil, nil, nil,
|
94
|
+
nil, nil, nil, nil, 16, 318, 321, 208, 230, 315,
|
95
95
|
-2, nil, nil, 252, nil, nil, nil, nil, nil, nil,
|
96
96
|
274, nil, -2, nil, nil, nil, nil, nil, nil, nil,
|
97
97
|
296, nil, nil, nil, -6, nil, nil, nil, nil, 29,
|
98
|
-
nil, 318,
|
98
|
+
nil, 318, -2, -3, nil, nil, nil ]
|
99
99
|
|
100
100
|
racc_action_default = [
|
101
101
|
-47, -47, -1, -2, -31, -47, -47, -47, -47, -47,
|
@@ -107,26 +107,26 @@ racc_action_default = [
|
|
107
107
|
-37, -47, -47, -47, -35, -39, -26 ]
|
108
108
|
|
109
109
|
racc_goto_table = [
|
110
|
-
1, 33,
|
111
|
-
|
112
|
-
nil, nil, nil, nil, nil, nil,
|
113
|
-
nil, nil, nil, 53,
|
114
|
-
55,
|
110
|
+
1, 33, 64, 32, 25, 34, 35, 36, 37, 38,
|
111
|
+
54, 26, 39, 41, 27, 42, 46, 63, 62, nil,
|
112
|
+
nil, nil, nil, nil, nil, nil, 45, 25, 38, nil,
|
113
|
+
nil, nil, nil, 53, 26, nil, nil, nil, nil, nil,
|
114
|
+
55, 57, 25, nil, nil, nil, 59, nil, nil, 26,
|
115
115
|
34, nil, nil, nil, nil, nil, nil, nil, nil, 53,
|
116
116
|
nil, 65 ]
|
117
117
|
|
118
118
|
racc_goto_check = [
|
119
|
-
1, 5,
|
120
|
-
|
121
|
-
nil, nil, nil, nil, nil, nil,
|
122
|
-
nil, nil, nil, 1,
|
123
|
-
1,
|
119
|
+
1, 5, 13, 9, 2, 1, 1, 1, 1, 1,
|
120
|
+
14, 3, 6, 6, 4, 8, 10, 11, 12, nil,
|
121
|
+
nil, nil, nil, nil, nil, nil, 9, 2, 1, nil,
|
122
|
+
nil, nil, nil, 1, 3, nil, nil, nil, nil, nil,
|
123
|
+
1, 9, 2, nil, nil, nil, 5, nil, nil, 3,
|
124
124
|
1, nil, nil, nil, nil, nil, nil, nil, nil, 1,
|
125
125
|
nil, 1 ]
|
126
126
|
|
127
127
|
racc_goto_pointer = [
|
128
|
-
nil, 0,
|
129
|
-
-
|
128
|
+
nil, 0, 0, 7, 10, -4, 2, nil, -8, -1,
|
129
|
+
-13, -42, -41, -57, -30 ]
|
130
130
|
|
131
131
|
racc_goto_default = [
|
132
132
|
nil, 29, 2, 3, nil, nil, nil, 13, nil, nil,
|
@@ -239,7 +239,6 @@ Racc_arg = [
|
|
239
239
|
racc_shift_n,
|
240
240
|
racc_reduce_n,
|
241
241
|
racc_use_result_var ]
|
242
|
-
Ractor.make_shareable(Racc_arg) if defined?(Ractor)
|
243
242
|
|
244
243
|
Racc_token_to_s_table = [
|
245
244
|
"$end",
|
@@ -290,7 +289,6 @@ Racc_token_to_s_table = [
|
|
290
289
|
"opt_rest",
|
291
290
|
"rest",
|
292
291
|
"arg_list" ]
|
293
|
-
Ractor.make_shareable(Racc_token_to_s_table) if defined?(Ractor)
|
294
292
|
|
295
293
|
Racc_debug_parser = false
|
296
294
|
|
@@ -11,7 +11,7 @@ module RuboCop
|
|
11
11
|
# Doc on how this fits in the compiling process:
|
12
12
|
# /docs/modules/ROOT/pages/node_pattern.adoc
|
13
13
|
class Parser < Racc::Parser
|
14
|
-
extend
|
14
|
+
extend SimpleForwardable
|
15
15
|
|
16
16
|
Builder = NodePattern::Builder
|
17
17
|
Lexer = NodePattern::Lexer
|
@@ -0,0 +1,16 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module RuboCop
|
4
|
+
# Similar to `Forwardable#def_delegators`, but simpler & faster
|
5
|
+
module SimpleForwardable
|
6
|
+
def def_delegators(accessor, *methods)
|
7
|
+
methods.each do |method|
|
8
|
+
class_eval(<<~RUBY, __FILE__, __LINE__ + 1)
|
9
|
+
def #{method}(...) # def example(...)
|
10
|
+
#{accessor}.#{method}(...) # foo.example(...)
|
11
|
+
end # end
|
12
|
+
RUBY
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
data/lib/rubocop/ast/version.rb
CHANGED
data/lib/rubocop/ast.rb
CHANGED
@@ -5,6 +5,7 @@ require 'forwardable'
|
|
5
5
|
require 'set'
|
6
6
|
|
7
7
|
require_relative 'ast/ext/range'
|
8
|
+
require_relative 'ast/utilities/simple_forwardable'
|
8
9
|
require_relative 'ast/node_pattern/method_definer'
|
9
10
|
require_relative 'ast/node_pattern'
|
10
11
|
require_relative 'ast/node/mixin/descendence'
|
metadata
CHANGED
@@ -1,16 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rubocop-ast
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.32.
|
4
|
+
version: 1.32.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Bozhidar Batsov
|
8
8
|
- Jonas Arvidsson
|
9
9
|
- Yuji Nakayama
|
10
|
-
autorequire:
|
11
10
|
bindir: bin
|
12
11
|
cert_chain: []
|
13
|
-
date: 2024-
|
12
|
+
date: 2024-09-04 00:00:00.000000000 Z
|
14
13
|
dependencies:
|
15
14
|
- !ruby/object:Gem::Dependency
|
16
15
|
name: parser
|
@@ -130,6 +129,7 @@ files:
|
|
130
129
|
- lib/rubocop/ast/sexp.rb
|
131
130
|
- lib/rubocop/ast/token.rb
|
132
131
|
- lib/rubocop/ast/traversal.rb
|
132
|
+
- lib/rubocop/ast/utilities/simple_forwardable.rb
|
133
133
|
- lib/rubocop/ast/version.rb
|
134
134
|
homepage: https://github.com/rubocop/rubocop-ast
|
135
135
|
licenses:
|
@@ -141,7 +141,6 @@ metadata:
|
|
141
141
|
documentation_uri: https://docs.rubocop.org/rubocop-ast/
|
142
142
|
bug_tracker_uri: https://github.com/rubocop/rubocop-ast/issues
|
143
143
|
rubygems_mfa_required: 'true'
|
144
|
-
post_install_message:
|
145
144
|
rdoc_options: []
|
146
145
|
require_paths:
|
147
146
|
- lib
|
@@ -156,8 +155,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
156
155
|
- !ruby/object:Gem::Version
|
157
156
|
version: '0'
|
158
157
|
requirements: []
|
159
|
-
rubygems_version: 3.
|
160
|
-
signing_key:
|
158
|
+
rubygems_version: 3.6.0.dev
|
161
159
|
specification_version: 4
|
162
160
|
summary: RuboCop tools to deal with Ruby code AST.
|
163
161
|
test_files: []
|