sxn 0.2.0
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 +7 -0
- data/.gem_rbs_collection/addressable/2.8/.rbs_meta.yaml +9 -0
- data/.gem_rbs_collection/addressable/2.8/addressable.rbs +62 -0
- data/.gem_rbs_collection/async/2.12/.rbs_meta.yaml +9 -0
- data/.gem_rbs_collection/async/2.12/async.rbs +119 -0
- data/.gem_rbs_collection/async/2.12/kernel.rbs +5 -0
- data/.gem_rbs_collection/async/2.12/manifest.yaml +7 -0
- data/.gem_rbs_collection/bcrypt/3.1/.rbs_meta.yaml +9 -0
- data/.gem_rbs_collection/bcrypt/3.1/bcrypt.rbs +47 -0
- data/.gem_rbs_collection/bcrypt/3.1/manifest.yaml +2 -0
- data/.gem_rbs_collection/bigdecimal/3.1/.rbs_meta.yaml +9 -0
- data/.gem_rbs_collection/bigdecimal/3.1/bigdecimal-math.rbs +119 -0
- data/.gem_rbs_collection/bigdecimal/3.1/bigdecimal.rbs +1630 -0
- data/.gem_rbs_collection/concurrent-ruby/1.1/.rbs_meta.yaml +9 -0
- data/.gem_rbs_collection/concurrent-ruby/1.1/array.rbs +4 -0
- data/.gem_rbs_collection/concurrent-ruby/1.1/executor.rbs +26 -0
- data/.gem_rbs_collection/concurrent-ruby/1.1/hash.rbs +4 -0
- data/.gem_rbs_collection/concurrent-ruby/1.1/map.rbs +65 -0
- data/.gem_rbs_collection/concurrent-ruby/1.1/promises.rbs +249 -0
- data/.gem_rbs_collection/concurrent-ruby/1.1/utility/processor_counter.rbs +5 -0
- data/.gem_rbs_collection/diff-lcs/1.5/.rbs_meta.yaml +9 -0
- data/.gem_rbs_collection/diff-lcs/1.5/diff-lcs.rbs +11 -0
- data/.gem_rbs_collection/listen/3.9/.rbs_meta.yaml +9 -0
- data/.gem_rbs_collection/listen/3.9/listen.rbs +25 -0
- data/.gem_rbs_collection/listen/3.9/listener.rbs +24 -0
- data/.gem_rbs_collection/mini_mime/0.1/.rbs_meta.yaml +9 -0
- data/.gem_rbs_collection/mini_mime/0.1/mini_mime.rbs +14 -0
- data/.gem_rbs_collection/parallel/1.20/.rbs_meta.yaml +9 -0
- data/.gem_rbs_collection/parallel/1.20/parallel.rbs +86 -0
- data/.gem_rbs_collection/rake/13.0/.rbs_meta.yaml +9 -0
- data/.gem_rbs_collection/rake/13.0/manifest.yaml +2 -0
- data/.gem_rbs_collection/rake/13.0/rake.rbs +39 -0
- data/.gem_rbs_collection/rubocop-ast/1.46/.rbs_meta.yaml +9 -0
- data/.gem_rbs_collection/rubocop-ast/1.46/rubocop-ast.rbs +822 -0
- data/.gem_rbs_collection/sqlite3/2.0/.rbs_meta.yaml +9 -0
- data/.gem_rbs_collection/sqlite3/2.0/database.rbs +20 -0
- data/.gem_rbs_collection/sqlite3/2.0/pragmas.rbs +5 -0
- data/.rspec +4 -0
- data/.rubocop.yml +121 -0
- data/.simplecov +51 -0
- data/CHANGELOG.md +49 -0
- data/Gemfile +24 -0
- data/Gemfile.lock +329 -0
- data/LICENSE.txt +21 -0
- data/README.md +225 -0
- data/Rakefile +54 -0
- data/Steepfile +50 -0
- data/bin/sxn +6 -0
- data/lib/sxn/CLI.rb +275 -0
- data/lib/sxn/commands/init.rb +137 -0
- data/lib/sxn/commands/projects.rb +350 -0
- data/lib/sxn/commands/rules.rb +435 -0
- data/lib/sxn/commands/sessions.rb +300 -0
- data/lib/sxn/commands/worktrees.rb +416 -0
- data/lib/sxn/commands.rb +13 -0
- data/lib/sxn/config/config_cache.rb +295 -0
- data/lib/sxn/config/config_discovery.rb +242 -0
- data/lib/sxn/config/config_validator.rb +562 -0
- data/lib/sxn/config.rb +259 -0
- data/lib/sxn/core/config_manager.rb +290 -0
- data/lib/sxn/core/project_manager.rb +307 -0
- data/lib/sxn/core/rules_manager.rb +306 -0
- data/lib/sxn/core/session_manager.rb +336 -0
- data/lib/sxn/core/worktree_manager.rb +281 -0
- data/lib/sxn/core.rb +13 -0
- data/lib/sxn/database/errors.rb +29 -0
- data/lib/sxn/database/session_database.rb +691 -0
- data/lib/sxn/database.rb +24 -0
- data/lib/sxn/errors.rb +76 -0
- data/lib/sxn/rules/base_rule.rb +367 -0
- data/lib/sxn/rules/copy_files_rule.rb +346 -0
- data/lib/sxn/rules/errors.rb +28 -0
- data/lib/sxn/rules/project_detector.rb +871 -0
- data/lib/sxn/rules/rules_engine.rb +485 -0
- data/lib/sxn/rules/setup_commands_rule.rb +307 -0
- data/lib/sxn/rules/template_rule.rb +262 -0
- data/lib/sxn/rules.rb +148 -0
- data/lib/sxn/runtime_validations.rb +96 -0
- data/lib/sxn/security/secure_command_executor.rb +364 -0
- data/lib/sxn/security/secure_file_copier.rb +478 -0
- data/lib/sxn/security/secure_path_validator.rb +258 -0
- data/lib/sxn/security.rb +15 -0
- data/lib/sxn/templates/common/gitignore.liquid +99 -0
- data/lib/sxn/templates/common/session-info.md.liquid +58 -0
- data/lib/sxn/templates/errors.rb +36 -0
- data/lib/sxn/templates/javascript/README.md.liquid +59 -0
- data/lib/sxn/templates/javascript/session-info.md.liquid +206 -0
- data/lib/sxn/templates/rails/CLAUDE.md.liquid +78 -0
- data/lib/sxn/templates/rails/database.yml.liquid +31 -0
- data/lib/sxn/templates/rails/session-info.md.liquid +144 -0
- data/lib/sxn/templates/template_engine.rb +346 -0
- data/lib/sxn/templates/template_processor.rb +279 -0
- data/lib/sxn/templates/template_security.rb +410 -0
- data/lib/sxn/templates/template_variables.rb +713 -0
- data/lib/sxn/templates.rb +28 -0
- data/lib/sxn/ui/output.rb +103 -0
- data/lib/sxn/ui/progress_bar.rb +91 -0
- data/lib/sxn/ui/prompt.rb +116 -0
- data/lib/sxn/ui/table.rb +183 -0
- data/lib/sxn/ui.rb +12 -0
- data/lib/sxn/version.rb +5 -0
- data/lib/sxn.rb +63 -0
- data/rbs_collection.lock.yaml +180 -0
- data/rbs_collection.yaml +39 -0
- data/scripts/test.sh +31 -0
- data/sig/external/liquid.rbs +116 -0
- data/sig/external/thor.rbs +99 -0
- data/sig/external/tty.rbs +71 -0
- data/sig/sxn/cli.rbs +46 -0
- data/sig/sxn/commands/init.rbs +38 -0
- data/sig/sxn/commands/projects.rbs +72 -0
- data/sig/sxn/commands/rules.rbs +95 -0
- data/sig/sxn/commands/sessions.rbs +62 -0
- data/sig/sxn/commands/worktrees.rbs +82 -0
- data/sig/sxn/commands.rbs +6 -0
- data/sig/sxn/config/config_cache.rbs +67 -0
- data/sig/sxn/config/config_discovery.rbs +64 -0
- data/sig/sxn/config/config_validator.rbs +64 -0
- data/sig/sxn/config.rbs +74 -0
- data/sig/sxn/core/config_manager.rbs +67 -0
- data/sig/sxn/core/project_manager.rbs +52 -0
- data/sig/sxn/core/rules_manager.rbs +54 -0
- data/sig/sxn/core/session_manager.rbs +59 -0
- data/sig/sxn/core/worktree_manager.rbs +50 -0
- data/sig/sxn/core.rbs +87 -0
- data/sig/sxn/database/errors.rbs +37 -0
- data/sig/sxn/database/session_database.rbs +151 -0
- data/sig/sxn/database.rbs +83 -0
- data/sig/sxn/errors.rbs +89 -0
- data/sig/sxn/rules/base_rule.rbs +137 -0
- data/sig/sxn/rules/copy_files_rule.rbs +65 -0
- data/sig/sxn/rules/errors.rbs +33 -0
- data/sig/sxn/rules/project_detector.rbs +115 -0
- data/sig/sxn/rules/rules_engine.rbs +118 -0
- data/sig/sxn/rules/setup_commands_rule.rbs +60 -0
- data/sig/sxn/rules/template_rule.rbs +44 -0
- data/sig/sxn/rules.rbs +287 -0
- data/sig/sxn/runtime_validations.rbs +16 -0
- data/sig/sxn/security/secure_command_executor.rbs +63 -0
- data/sig/sxn/security/secure_file_copier.rbs +79 -0
- data/sig/sxn/security/secure_path_validator.rbs +30 -0
- data/sig/sxn/security.rbs +128 -0
- data/sig/sxn/templates/errors.rbs +43 -0
- data/sig/sxn/templates/template_engine.rbs +50 -0
- data/sig/sxn/templates/template_processor.rbs +44 -0
- data/sig/sxn/templates/template_security.rbs +62 -0
- data/sig/sxn/templates/template_variables.rbs +103 -0
- data/sig/sxn/templates.rbs +104 -0
- data/sig/sxn/ui/output.rbs +50 -0
- data/sig/sxn/ui/progress_bar.rbs +39 -0
- data/sig/sxn/ui/prompt.rbs +38 -0
- data/sig/sxn/ui/table.rbs +43 -0
- data/sig/sxn/ui.rbs +63 -0
- data/sig/sxn/version.rbs +5 -0
- data/sig/sxn.rbs +29 -0
- metadata +635 -0
@@ -0,0 +1,822 @@
|
|
1
|
+
module RuboCop
|
2
|
+
module AST
|
3
|
+
class ProcessedSource
|
4
|
+
def initialize: (String source, Float ruby_version, ?path?) -> untyped
|
5
|
+
def raw_source: () -> String
|
6
|
+
def buffer: () -> Parser::Source::Buffer
|
7
|
+
def comments: () -> Array[Parser::Source::Comment]
|
8
|
+
attr_reader ast: (Node | nil)
|
9
|
+
end
|
10
|
+
|
11
|
+
class NodePattern
|
12
|
+
module Macros
|
13
|
+
def def_node_matcher: (Symbol, String) -> void
|
14
|
+
def def_node_search: (Symbol, String) -> void
|
15
|
+
end
|
16
|
+
|
17
|
+
class Compiler
|
18
|
+
end
|
19
|
+
|
20
|
+
def initialize: (String str, ?Compiler compiler) -> untyped
|
21
|
+
def match: (*untyped, **untyped) -> bool
|
22
|
+
| (*untyped, **untyped) { (*untyped) -> untyped } -> bool
|
23
|
+
end
|
24
|
+
|
25
|
+
module Traversal
|
26
|
+
end
|
27
|
+
|
28
|
+
module BasicLiteralNode
|
29
|
+
def value: () -> untyped
|
30
|
+
end
|
31
|
+
|
32
|
+
module BinaryOperatorNode
|
33
|
+
def lhs: () -> Node
|
34
|
+
def rhs: () -> Node
|
35
|
+
def conditions: () -> Array[Node]
|
36
|
+
end
|
37
|
+
|
38
|
+
module CollectionNode
|
39
|
+
end
|
40
|
+
|
41
|
+
module ConditionalNode
|
42
|
+
def single_line_condition?: () -> bool
|
43
|
+
def multiline_condition?: () -> bool
|
44
|
+
def condition: () -> Node?
|
45
|
+
def body: () -> Node?
|
46
|
+
end
|
47
|
+
|
48
|
+
module ConstantNode
|
49
|
+
def namespace: () -> Node?
|
50
|
+
def short_name: () -> Symbol
|
51
|
+
def module_name?: () -> bool
|
52
|
+
alias class_name? module_name?
|
53
|
+
def absolute?: () -> bool
|
54
|
+
def relative?: () -> bool
|
55
|
+
def each_path: () { (Node) -> void } -> self
|
56
|
+
| () -> ::Enumerator[Node, self]
|
57
|
+
end
|
58
|
+
|
59
|
+
module Descendence
|
60
|
+
def each_child_node: (*Symbol types) { (Node) -> void } -> self
|
61
|
+
| (*Symbol types) -> ::Enumerator[Node, self]
|
62
|
+
def child_nodes: () -> Array[Node]
|
63
|
+
def each_descendant: (*Symbol types) { (Node) -> void } -> self
|
64
|
+
| (*Symbol types) -> ::Enumerator[Node, self]
|
65
|
+
def descendants: () -> Array[Node]
|
66
|
+
def each_node: (*Symbol types) { (Node) -> void } -> self
|
67
|
+
| (*Symbol types) -> ::Enumerator[Node, self]
|
68
|
+
end
|
69
|
+
|
70
|
+
module HashElementNode
|
71
|
+
def key: () -> Node
|
72
|
+
def value: () -> Node
|
73
|
+
def same_line?: (Node other) -> bool
|
74
|
+
def key_delta: (Node other, ?Symbol alignment) -> Integer
|
75
|
+
def value_delta: (Node other) -> Integer
|
76
|
+
def delimiter_delta: (Node other) -> Integer
|
77
|
+
end
|
78
|
+
|
79
|
+
module MethodDispatchNode
|
80
|
+
include MethodIdentifierPredicates
|
81
|
+
def receiver: () -> Node?
|
82
|
+
def method_name: () -> Symbol
|
83
|
+
def selector: () -> Parser::Source::Range
|
84
|
+
def block_node: () -> BlockNode?
|
85
|
+
def macro?: () -> bool
|
86
|
+
def access_modifier?: () -> bool
|
87
|
+
def bare_access_modifier?: () -> bool
|
88
|
+
def non_bare_access_modifier?: () -> bool
|
89
|
+
def special_modifier?: () -> bool
|
90
|
+
def command?: (Symbol name) -> bool
|
91
|
+
def setter_method?: () -> bool
|
92
|
+
alias assignment? setter_method?
|
93
|
+
def dot?: () -> bool
|
94
|
+
def double_colon?: () -> bool
|
95
|
+
def safe_navigation?: () -> bool
|
96
|
+
def self_receiver?: () -> bool
|
97
|
+
def const_receiver?: () -> bool
|
98
|
+
def implicit_call?: () -> bool
|
99
|
+
def block_literal?: () -> bool
|
100
|
+
def arithmetic_operation?: () -> bool
|
101
|
+
def def_modifier?: (?Node node) -> bool
|
102
|
+
def def_modifier: (?Node node) -> Node?
|
103
|
+
def lambda?: () -> bool
|
104
|
+
def lambda_literal?: () -> bool
|
105
|
+
def unary_operation?: () -> bool
|
106
|
+
def binary_operation?: () -> bool
|
107
|
+
end
|
108
|
+
|
109
|
+
module MethodIdentifierPredicates
|
110
|
+
def method?: ((Symbol | String) name) -> bool
|
111
|
+
def operator_method?: () -> bool
|
112
|
+
def nonmutating_binary_operator_method?: () -> bool
|
113
|
+
def nonmutating_unary_operator_method?: () -> bool
|
114
|
+
def nonmutating_operator_method?: () -> bool
|
115
|
+
def nonmutating_array_method?: () -> bool
|
116
|
+
def nonmutating_hash_method?: () -> bool
|
117
|
+
def nonmutating_string_method?: () -> bool
|
118
|
+
def comparison_method?: () -> bool
|
119
|
+
def assignment_method?: () -> bool
|
120
|
+
def enumerator_method?: () -> bool
|
121
|
+
def enumerable_method?: () -> bool
|
122
|
+
def predicate_method?: () -> bool
|
123
|
+
def bang_method?: () -> bool
|
124
|
+
def camel_case_method?: () -> boolish
|
125
|
+
def self_receiver?: () -> boolish
|
126
|
+
def const_receiver?: () -> boolish
|
127
|
+
def negation_method?: () -> boolish
|
128
|
+
def prefix_not?: () -> boolish
|
129
|
+
def prefix_bang?: () -> boolish
|
130
|
+
end
|
131
|
+
|
132
|
+
module ModifierNode
|
133
|
+
def modifier_form?: () -> bool
|
134
|
+
end
|
135
|
+
|
136
|
+
module NumericNode
|
137
|
+
def sign?: () -> bool
|
138
|
+
end
|
139
|
+
|
140
|
+
module ParameterizedNode
|
141
|
+
def parenthesized?: () -> bool
|
142
|
+
def first_argument: () -> Node?
|
143
|
+
def last_argument: () -> Node?
|
144
|
+
def arguments?: () -> bool
|
145
|
+
def splat_argument?: () -> bool
|
146
|
+
alias rest_argument? splat_argument?
|
147
|
+
def block_argument?: () -> bool
|
148
|
+
|
149
|
+
module WrappedArguments
|
150
|
+
include ParameterizedNode
|
151
|
+
def arguments: () -> Array[Node]
|
152
|
+
end
|
153
|
+
|
154
|
+
module RestArguments
|
155
|
+
include ParameterizedNode
|
156
|
+
def arguments: () -> Array[Node]
|
157
|
+
end
|
158
|
+
end
|
159
|
+
|
160
|
+
module PredicateOperatorNode
|
161
|
+
def operator: () -> String
|
162
|
+
def logical_operator?: () -> bool
|
163
|
+
def semantic_operator?: () -> bool
|
164
|
+
end
|
165
|
+
|
166
|
+
class Node < Parser::AST::Node
|
167
|
+
include Descendence
|
168
|
+
def type?: (*Symbol types) -> bool
|
169
|
+
def true_type?: () -> bool
|
170
|
+
def false_type?: () -> bool
|
171
|
+
def nil_type?: () -> bool
|
172
|
+
def int_type?: () -> bool
|
173
|
+
def float_type?: () -> bool
|
174
|
+
def str_type?: () -> bool
|
175
|
+
def dstr_type?: () -> bool
|
176
|
+
def sym_type?: () -> bool
|
177
|
+
def dsym_type?: () -> bool
|
178
|
+
def xstr_type?: () -> bool
|
179
|
+
def regopt_type?: () -> bool
|
180
|
+
def regexp_type?: () -> bool
|
181
|
+
def array_type?: () -> bool
|
182
|
+
def splat_type?: () -> bool
|
183
|
+
def pair_type?: () -> bool
|
184
|
+
def kwsplat_type?: () -> bool
|
185
|
+
def hash_type?: () -> bool
|
186
|
+
def irange_type?: () -> bool
|
187
|
+
def erange_type?: () -> bool
|
188
|
+
def self_type?: () -> bool
|
189
|
+
def lvar_type?: () -> bool
|
190
|
+
def ivar_type?: () -> bool
|
191
|
+
def cvar_type?: () -> bool
|
192
|
+
def gvar_type?: () -> bool
|
193
|
+
def const_type?: () -> bool
|
194
|
+
def defined_type?: () -> bool
|
195
|
+
def lvasgn_type?: () -> bool
|
196
|
+
def ivasgn_type?: () -> bool
|
197
|
+
def cvasgn_type?: () -> bool
|
198
|
+
def gvasgn_type?: () -> bool
|
199
|
+
def casgn_type?: () -> bool
|
200
|
+
def mlhs_type?: () -> bool
|
201
|
+
def masgn_type?: () -> bool
|
202
|
+
def op_asgn_type?: () -> bool
|
203
|
+
def and_asgn_type?: () -> bool
|
204
|
+
def ensure_type?: () -> bool
|
205
|
+
def rescue_type?: () -> bool
|
206
|
+
def arg_expr_type?: () -> bool
|
207
|
+
def or_asgn_type?: () -> bool
|
208
|
+
def back_ref_type?: () -> bool
|
209
|
+
def nth_ref_type?: () -> bool
|
210
|
+
def match_with_lvasgn_type?: () -> bool
|
211
|
+
def match_current_line_type?: () -> bool
|
212
|
+
def module_type?: () -> bool
|
213
|
+
def class_type?: () -> bool
|
214
|
+
def sclass_type?: () -> bool
|
215
|
+
def def_type?: () -> bool
|
216
|
+
def defs_type?: () -> bool
|
217
|
+
def undef_type?: () -> bool
|
218
|
+
def alias_type?: () -> bool
|
219
|
+
def args_type?: () -> bool
|
220
|
+
def cbase_type?: () -> bool
|
221
|
+
def arg_type?: () -> bool
|
222
|
+
def optarg_type?: () -> bool
|
223
|
+
def restarg_type?: () -> bool
|
224
|
+
def blockarg_type?: () -> bool
|
225
|
+
def block_pass_type?: () -> bool
|
226
|
+
def kwarg_type?: () -> bool
|
227
|
+
def kwoptarg_type?: () -> bool
|
228
|
+
def kwrestarg_type?: () -> bool
|
229
|
+
def kwnilarg_type?: () -> bool
|
230
|
+
def csend_type?: () -> bool
|
231
|
+
def super_type?: () -> bool
|
232
|
+
def zsuper_type?: () -> bool
|
233
|
+
def yield_type?: () -> bool
|
234
|
+
def block_type?: () -> bool
|
235
|
+
def and_type?: () -> bool
|
236
|
+
def not_type?: () -> bool
|
237
|
+
def or_type?: () -> bool
|
238
|
+
def if_type?: () -> bool
|
239
|
+
def when_type?: () -> bool
|
240
|
+
def case_type?: () -> bool
|
241
|
+
def while_type?: () -> bool
|
242
|
+
def until_type?: () -> bool
|
243
|
+
def while_post_type?: () -> bool
|
244
|
+
def until_post_type?: () -> bool
|
245
|
+
def for_type?: () -> bool
|
246
|
+
def break_type?: () -> bool
|
247
|
+
def next_type?: () -> bool
|
248
|
+
def redo_type?: () -> bool
|
249
|
+
def return_type?: () -> bool
|
250
|
+
def resbody_type?: () -> bool
|
251
|
+
def kwbegin_type?: () -> bool
|
252
|
+
def begin_type?: () -> bool
|
253
|
+
def retry_type?: () -> bool
|
254
|
+
def preexe_type?: () -> bool
|
255
|
+
def postexe_type?: () -> bool
|
256
|
+
def iflipflop_type?: () -> bool
|
257
|
+
def eflipflop_type?: () -> bool
|
258
|
+
def shadowarg_type?: () -> bool
|
259
|
+
def complex_type?: () -> bool
|
260
|
+
def rational_type?: () -> bool
|
261
|
+
def __FILE___type?: () -> bool
|
262
|
+
def __LINE___type?: () -> bool
|
263
|
+
def __ENCODING___type?: () -> bool
|
264
|
+
def ident_type?: () -> bool
|
265
|
+
def lambda_type?: () -> bool
|
266
|
+
def indexasgn_type?: () -> bool
|
267
|
+
def index_type?: () -> bool
|
268
|
+
def procarg0_type?: () -> bool
|
269
|
+
def restarg_expr_type?: () -> bool
|
270
|
+
def blockarg_expr_type?: () -> bool
|
271
|
+
def objc_kwarg_type?: () -> bool
|
272
|
+
def objc_restarg_type?: () -> bool
|
273
|
+
def objc_varargs_type?: () -> bool
|
274
|
+
def numargs_type?: () -> bool
|
275
|
+
def numblock_type?: () -> bool
|
276
|
+
def forward_args_type?: () -> bool
|
277
|
+
def forwarded_args_type?: () -> bool
|
278
|
+
def forward_arg_type?: () -> bool
|
279
|
+
def case_match_type?: () -> bool
|
280
|
+
def in_match_type?: () -> bool
|
281
|
+
def in_pattern_type?: () -> bool
|
282
|
+
def match_var_type?: () -> bool
|
283
|
+
def pin_type?: () -> bool
|
284
|
+
def match_alt_type?: () -> bool
|
285
|
+
def match_as_type?: () -> bool
|
286
|
+
def match_rest_type?: () -> bool
|
287
|
+
def array_pattern_type?: () -> bool
|
288
|
+
def match_with_trailing_comma_type?: () -> bool
|
289
|
+
def array_pattern_with_tail_type?: () -> bool
|
290
|
+
def hash_pattern_type?: () -> bool
|
291
|
+
def const_pattern_type?: () -> bool
|
292
|
+
def if_guard_type?: () -> bool
|
293
|
+
def unless_guard_type?: () -> bool
|
294
|
+
def match_nil_pattern_type?: () -> bool
|
295
|
+
def empty_else_type?: () -> bool
|
296
|
+
def find_pattern_type?: () -> bool
|
297
|
+
def kwargs_type?: () -> bool
|
298
|
+
def match_pattern_p_type?: () -> bool
|
299
|
+
def match_pattern_type?: () -> bool
|
300
|
+
def forwarded_restarg_type?: () -> bool
|
301
|
+
def forwarded_kwrestarg_type?: () -> bool
|
302
|
+
def itarg_type?: () -> bool
|
303
|
+
def itblock_type?: () -> bool
|
304
|
+
def send_type?: () -> bool
|
305
|
+
def parent: () -> Node?
|
306
|
+
def parent?: () -> bool
|
307
|
+
def root?: () -> bool
|
308
|
+
def to_a: () -> Array[Node]
|
309
|
+
alias node_parts to_a
|
310
|
+
def each_ancestor: (*Symbol types) { (Node) -> void } -> self
|
311
|
+
| (*Symbol types) -> ::Enumerator[Node, self]
|
312
|
+
def ancestors: () -> Array[Node]
|
313
|
+
def source: () -> String?
|
314
|
+
def source_range: () -> Parser::Source::Range
|
315
|
+
def first_line: () -> Integer
|
316
|
+
def last_line: () -> Integer
|
317
|
+
def line_count: () -> Integer
|
318
|
+
def nonempty_line_count: () -> Integer
|
319
|
+
def source_length: () -> Integer
|
320
|
+
def receiver: () -> Node?
|
321
|
+
def str_content: () -> (String | false)
|
322
|
+
def const_name: () -> String?
|
323
|
+
def defined_module: () -> ConstNode?
|
324
|
+
def defined_module_name: () -> String?
|
325
|
+
def parent_module_name: () -> String
|
326
|
+
def multiline?: () -> bool
|
327
|
+
def single_line?: () -> bool
|
328
|
+
def empty_source?: () -> bool
|
329
|
+
def assignment_or_similar?: () -> bool
|
330
|
+
def literal?: () -> bool
|
331
|
+
def basic_literal?: () -> bool
|
332
|
+
def truthy_literal?: () -> bool
|
333
|
+
def falsey_literal?: () -> bool
|
334
|
+
def mutable_literal?: () -> bool
|
335
|
+
def immutable_literal?: () -> bool
|
336
|
+
def recursive_literal?: () -> bool
|
337
|
+
def recursive_basic_literal?: () -> bool
|
338
|
+
def variable?: () -> bool
|
339
|
+
def reference?: () -> bool
|
340
|
+
def equals_asgn?: () -> bool
|
341
|
+
def shorthand_asgn?: () -> bool
|
342
|
+
def assignment?: () -> bool
|
343
|
+
def basic_conditional?: () -> bool
|
344
|
+
def conditional?: () -> bool
|
345
|
+
def post_condition_loop?: () -> bool
|
346
|
+
def loop_keyword?: () -> bool
|
347
|
+
def keyword?: () -> bool
|
348
|
+
def special_keyword?: () -> bool
|
349
|
+
def operator_keyword?: () -> bool
|
350
|
+
def parenthesized_call?: () -> bool
|
351
|
+
def call_type?: () -> bool
|
352
|
+
def chained?: () -> bool
|
353
|
+
def argument?: () -> bool
|
354
|
+
def argument_type?: () -> bool
|
355
|
+
def boolean_type?: () -> bool
|
356
|
+
def numeric_type?: () -> bool
|
357
|
+
def range_type?: () -> bool
|
358
|
+
def guard_clause?: () -> bool
|
359
|
+
def match_guard_clause?: () -> bool
|
360
|
+
def proc?: () -> bool
|
361
|
+
def lambda?: () -> bool
|
362
|
+
def lambda_or_proc?: () -> bool
|
363
|
+
def global_const?: (untyped) -> bool
|
364
|
+
def class_constructor?: () -> bool
|
365
|
+
def struct_constructor?: () -> bool
|
366
|
+
def class_definition?: () -> bool
|
367
|
+
def module_definition?: () -> bool
|
368
|
+
def value_used?: () -> bool
|
369
|
+
def pure?: () -> bool
|
370
|
+
def sibling_index: () -> (Integer | nil)
|
371
|
+
def right_sibling: () -> (Node | nil)
|
372
|
+
def left_sibling: () -> (Node | nil)
|
373
|
+
def left_siblings: () -> Array[Node]
|
374
|
+
def right_siblings: () -> Array[Node]
|
375
|
+
end
|
376
|
+
|
377
|
+
class AliasNode < Node
|
378
|
+
def old_identifier: () -> SymbolNode
|
379
|
+
def new_identifier: () -> SymbolNode
|
380
|
+
end
|
381
|
+
|
382
|
+
class AndAsgnNode < OpAsgnNode
|
383
|
+
def operator: () -> :'&&'
|
384
|
+
end
|
385
|
+
|
386
|
+
class AndNode < Node
|
387
|
+
include BinaryOperatorNode
|
388
|
+
include PredicateOperatorNode
|
389
|
+
def alternate_operator: () -> String
|
390
|
+
def inverse_operator: () -> String
|
391
|
+
end
|
392
|
+
|
393
|
+
class ArgNode < Node
|
394
|
+
def name: () -> Symbol?
|
395
|
+
def default_value: () -> Node?
|
396
|
+
def default?: () -> bool
|
397
|
+
end
|
398
|
+
|
399
|
+
class ArgsNode < Node
|
400
|
+
include CollectionNode
|
401
|
+
def empty_and_without_delimiters?: () -> bool
|
402
|
+
def argument_list: () -> Array[Node]
|
403
|
+
end
|
404
|
+
|
405
|
+
class ArrayNode < Node
|
406
|
+
alias values children
|
407
|
+
def each_value: () { (Node) -> void } -> self
|
408
|
+
| () -> ::Enumerator[Node, self]
|
409
|
+
def square_brackets?: () -> bool
|
410
|
+
def percent_literal?: (?Symbol type) -> bool
|
411
|
+
def bracketed?: () -> bool
|
412
|
+
attr_reader location: Parser::Source::Map::Collection
|
413
|
+
alias loc location
|
414
|
+
end
|
415
|
+
|
416
|
+
class AsgnNode < Node
|
417
|
+
def name: () -> Symbol
|
418
|
+
alias lhs name
|
419
|
+
def expression: () -> Node
|
420
|
+
alias rhs expression
|
421
|
+
end
|
422
|
+
|
423
|
+
class BlockNode < Node
|
424
|
+
include MethodIdentifierPredicates
|
425
|
+
def send_node: () -> SendNode
|
426
|
+
def first_argument: () -> Node?
|
427
|
+
def last_argument: () -> Node?
|
428
|
+
def arguments: () -> Array[Node]
|
429
|
+
def argument_list: () -> Array[Node]
|
430
|
+
def body: () -> Node?
|
431
|
+
def method_name: () -> Symbol
|
432
|
+
def arguments?: () -> bool
|
433
|
+
def braces?: () -> bool
|
434
|
+
def keywords?: () -> bool
|
435
|
+
def delimiters: () -> Array[String]
|
436
|
+
def opening_delimiter: () -> String
|
437
|
+
def closing_delimiter: () -> String
|
438
|
+
def single_line?: () -> bool
|
439
|
+
def multiline?: () -> bool
|
440
|
+
def lambda?: () -> bool
|
441
|
+
def void_context?: () -> bool
|
442
|
+
attr_reader location: Parser::Source::Map::Collection
|
443
|
+
alias loc location
|
444
|
+
end
|
445
|
+
|
446
|
+
class BreakNode < Node
|
447
|
+
include ParameterizedNode::WrappedArguments
|
448
|
+
end
|
449
|
+
|
450
|
+
class CaseMatchNode < Node
|
451
|
+
include ConditionalNode
|
452
|
+
def keyword: () -> 'case'
|
453
|
+
def in_pattern_branches: () -> Array[InPatternNode]
|
454
|
+
def branches: () -> Array[Node | nil]
|
455
|
+
def else_branch: () -> Node?
|
456
|
+
def else?: () -> bool
|
457
|
+
end
|
458
|
+
|
459
|
+
class CaseNode < Node
|
460
|
+
include ConditionalNode
|
461
|
+
def keyword: () -> 'case'
|
462
|
+
def when_branches: () -> Array[WhenNode]
|
463
|
+
def branches: () -> Array[Node | nil]
|
464
|
+
def else_branch: () -> Node?
|
465
|
+
def else?: () -> bool
|
466
|
+
end
|
467
|
+
|
468
|
+
class CasgnNode < Node
|
469
|
+
include ConstantNode
|
470
|
+
alias name short_name
|
471
|
+
alias lhs short_name
|
472
|
+
def expression: () -> Node
|
473
|
+
alias rhs expression
|
474
|
+
end
|
475
|
+
|
476
|
+
class ClassNode < Node
|
477
|
+
def identifier: () -> Node
|
478
|
+
def parent_class: () -> Node?
|
479
|
+
def body: () -> Node?
|
480
|
+
end
|
481
|
+
|
482
|
+
class ComplexNode < Node
|
483
|
+
include BasicLiteralNode
|
484
|
+
include NumericNode
|
485
|
+
end
|
486
|
+
|
487
|
+
class ConstNode < Node
|
488
|
+
include ConstantNode
|
489
|
+
end
|
490
|
+
|
491
|
+
class CsendNode < SendNode
|
492
|
+
def send_type?: () -> false
|
493
|
+
end
|
494
|
+
|
495
|
+
class DefNode < Node
|
496
|
+
include ParameterizedNode
|
497
|
+
include MethodIdentifierPredicates
|
498
|
+
def void_context?: () -> bool
|
499
|
+
def argument_forwarding?: () -> bool
|
500
|
+
def method_name: () -> Symbol
|
501
|
+
def arguments: () -> ArgsNode
|
502
|
+
def body: () -> Node
|
503
|
+
def receiver: () -> (Node | nil)
|
504
|
+
def endless?: () -> bool
|
505
|
+
attr_reader location: Parser::Source::Map::MethodDefinition
|
506
|
+
alias loc location
|
507
|
+
end
|
508
|
+
|
509
|
+
class DefinedNode < Node
|
510
|
+
include ParameterizedNode
|
511
|
+
include MethodDispatchNode
|
512
|
+
def node_parts: () -> Array[Node | nil]
|
513
|
+
alias arguments children
|
514
|
+
end
|
515
|
+
|
516
|
+
class DstrNode < Node
|
517
|
+
def value: () -> String
|
518
|
+
attr_reader location: (Parser::Source::Map::Collection | Parser::Source::Map::Heredoc)
|
519
|
+
alias loc location
|
520
|
+
end
|
521
|
+
|
522
|
+
class EnsureNode < Node
|
523
|
+
def body: () -> Node?
|
524
|
+
def branch: () -> Node?
|
525
|
+
def rescue_node: () -> Node?
|
526
|
+
def void_context?: () -> true
|
527
|
+
end
|
528
|
+
|
529
|
+
class FloatNode < Node
|
530
|
+
include BasicLiteralNode
|
531
|
+
include NumericNode
|
532
|
+
end
|
533
|
+
|
534
|
+
class ForNode < Node
|
535
|
+
def keyword: () -> 'for'
|
536
|
+
def do?: () -> bool
|
537
|
+
def void_context?: () -> true
|
538
|
+
def variable: () -> Node
|
539
|
+
def collection: () -> Node
|
540
|
+
def body: () -> Node?
|
541
|
+
end
|
542
|
+
|
543
|
+
class ForwardArgsNode < Node
|
544
|
+
include CollectionNode
|
545
|
+
def to_a: () -> [self]
|
546
|
+
end
|
547
|
+
|
548
|
+
class HashNode < Node
|
549
|
+
def pairs: () -> Array[PairNode]
|
550
|
+
def empty?: () -> bool
|
551
|
+
def each_pair: () { (Node, Node) -> void } -> self
|
552
|
+
| () -> ::Enumerator[PairNode, self]
|
553
|
+
def keys: () -> Array[Node]
|
554
|
+
def each_key: () { (Node) -> void } -> self
|
555
|
+
| () -> ::Enumerator[Node, self]
|
556
|
+
def values: () -> Array[Node]
|
557
|
+
def each_value: () { (Node) -> void } -> self
|
558
|
+
| () -> ::Enumerator[Node, self]
|
559
|
+
def pairs_on_same_line?: () -> bool
|
560
|
+
def mixed_delimiters?: () -> bool
|
561
|
+
def braces?: () -> bool
|
562
|
+
attr_reader location: Parser::Source::Map::Collection
|
563
|
+
alias loc location
|
564
|
+
end
|
565
|
+
|
566
|
+
class IfNode < Node
|
567
|
+
include ConditionalNode
|
568
|
+
include ModifierNode
|
569
|
+
def if?: () -> bool
|
570
|
+
def unless?: () -> bool
|
571
|
+
def then?: () -> bool
|
572
|
+
def elsif?: () -> bool
|
573
|
+
def else?: () -> bool
|
574
|
+
def ternary?: () -> bool
|
575
|
+
def keyword: () -> String
|
576
|
+
def inverse_keyword: () -> String
|
577
|
+
def modifier_form?: () -> bool
|
578
|
+
def nested_conditional?: () -> bool
|
579
|
+
def elsif_conditional?: () -> bool
|
580
|
+
def if_branch: () -> Node?
|
581
|
+
def else_branch: () -> Node?
|
582
|
+
def node_parts: () -> Array[Node]
|
583
|
+
def branches: () -> Array[Node]
|
584
|
+
attr_reader location: (Parser::Source::Map::Condition | Parser::Source::Map::Keyword | Parser::Source::Map::Ternary)
|
585
|
+
alias loc location
|
586
|
+
end
|
587
|
+
|
588
|
+
class InPatternNode < Node
|
589
|
+
def pattern: () -> Node
|
590
|
+
def branch_index: () -> Integer
|
591
|
+
def then?: () -> bool
|
592
|
+
def body: () -> Node?
|
593
|
+
end
|
594
|
+
|
595
|
+
class IndexNode < Node
|
596
|
+
include ParameterizedNode::RestArguments
|
597
|
+
include MethodDispatchNode
|
598
|
+
def attribute_accessor?: () -> false
|
599
|
+
def assignment_method?: () -> false
|
600
|
+
def method_name: () -> :[]
|
601
|
+
end
|
602
|
+
|
603
|
+
class IndexasgnNode < Node
|
604
|
+
include ParameterizedNode::RestArguments
|
605
|
+
include MethodDispatchNode
|
606
|
+
def attribute_accessor?: () -> false
|
607
|
+
def assignment_method?: () -> true
|
608
|
+
def method_name: () -> :[]=
|
609
|
+
end
|
610
|
+
|
611
|
+
class IntNode < Node
|
612
|
+
include BasicLiteralNode
|
613
|
+
include NumericNode
|
614
|
+
end
|
615
|
+
|
616
|
+
class KeywordBeginNode < Node
|
617
|
+
def body: () -> Node?
|
618
|
+
def ensure_node: () -> Node?
|
619
|
+
def rescue_node: () -> Node?
|
620
|
+
end
|
621
|
+
|
622
|
+
class KeywordSplatNode < Node
|
623
|
+
include HashElementNode
|
624
|
+
def hash_rocket?: () -> false
|
625
|
+
def colon?: () -> false
|
626
|
+
def operator: () -> String
|
627
|
+
def node_parts: () -> [self, self]
|
628
|
+
def kwsplat_type?: () -> true
|
629
|
+
end
|
630
|
+
|
631
|
+
class LambdaNode < Node
|
632
|
+
include ParameterizedNode::RestArguments
|
633
|
+
include MethodDispatchNode
|
634
|
+
def lambda?: () -> true
|
635
|
+
def lambda_literal?: () -> true
|
636
|
+
def attribute_accessor?: () -> false
|
637
|
+
def assignment_method?: () -> false
|
638
|
+
def receiver: () -> nil
|
639
|
+
def method_name: () -> :lambda
|
640
|
+
end
|
641
|
+
|
642
|
+
class MasgnNode < Node
|
643
|
+
def lhs: () -> MlhsNode
|
644
|
+
def assignments: () -> Array[Node]
|
645
|
+
def names: () -> Array[Symbol]
|
646
|
+
def expression: () -> Node
|
647
|
+
alias rhs expression
|
648
|
+
def values: () -> Array[Node]
|
649
|
+
end
|
650
|
+
|
651
|
+
class MlhsNode < Node
|
652
|
+
def assignments: () -> Array[Node]
|
653
|
+
end
|
654
|
+
|
655
|
+
class ModuleNode < Node
|
656
|
+
def identifier: () -> Node
|
657
|
+
def body: () -> Node?
|
658
|
+
end
|
659
|
+
|
660
|
+
class NextNode < Node
|
661
|
+
include ParameterizedNode::WrappedArguments
|
662
|
+
end
|
663
|
+
|
664
|
+
class OpAsgnNode < Node
|
665
|
+
def assignment_node: () -> AsgnNode
|
666
|
+
alias lhs assignment_node
|
667
|
+
def name: () -> Symbol
|
668
|
+
def operator: () -> Symbol
|
669
|
+
def expression: () -> Node
|
670
|
+
alias rhs expression
|
671
|
+
end
|
672
|
+
|
673
|
+
class OrAsgnNode < OpAsgnNode
|
674
|
+
def operator: () -> :'||'
|
675
|
+
end
|
676
|
+
|
677
|
+
class OrNode < Node
|
678
|
+
include BinaryOperatorNode
|
679
|
+
include PredicateOperatorNode
|
680
|
+
def alternate_operator: () -> String
|
681
|
+
def inverse_operator: () -> String
|
682
|
+
end
|
683
|
+
|
684
|
+
class RationalNode < Node
|
685
|
+
include BasicLiteralNode
|
686
|
+
include NumericNode
|
687
|
+
end
|
688
|
+
|
689
|
+
class PairNode < Node
|
690
|
+
include HashElementNode
|
691
|
+
def hash_rocket?: () -> bool
|
692
|
+
def colon?: () -> bool
|
693
|
+
def delimiter: (?with_spacing: bool) -> String
|
694
|
+
def inverse_delimiter: (?with_spacing: bool) -> String
|
695
|
+
def value_on_new_line?: () -> bool
|
696
|
+
def value_omission?: () -> bool
|
697
|
+
attr_reader location: Parser::Source::Map::Operator
|
698
|
+
alias loc location
|
699
|
+
end
|
700
|
+
|
701
|
+
class Procarg0Node < ArgNode
|
702
|
+
def name: () -> Symbol?
|
703
|
+
end
|
704
|
+
|
705
|
+
class RangeNode < Node
|
706
|
+
def begin: () -> Node?
|
707
|
+
def end: () -> Node?
|
708
|
+
end
|
709
|
+
|
710
|
+
class RegexpNode < Node
|
711
|
+
def to_regexp: () -> ::Regexp
|
712
|
+
def regopt: () -> Node
|
713
|
+
def options: () -> Integer
|
714
|
+
def content: () -> String
|
715
|
+
def slash_literal?: () -> bool
|
716
|
+
def percent_r_literal?: () -> bool
|
717
|
+
def delimiters: () -> String
|
718
|
+
def delimiter?: (String char) -> bool
|
719
|
+
def interpolation?: () -> bool
|
720
|
+
def multiline_mode?: () -> bool
|
721
|
+
def extended?: () -> bool
|
722
|
+
def ignore_case?: () -> bool
|
723
|
+
def single_interpolation?: () -> bool
|
724
|
+
def no_encoding?: () -> bool
|
725
|
+
def fixed_encoding?: () -> bool
|
726
|
+
attr_reader location: Parser::Source::Map::Collection
|
727
|
+
alias loc location
|
728
|
+
end
|
729
|
+
|
730
|
+
class ResbodyNode < Node
|
731
|
+
def body: () -> Node?
|
732
|
+
def exceptions: () -> Array[Node]
|
733
|
+
def exception_variable: () -> Node?
|
734
|
+
def branch_index: () -> Integer
|
735
|
+
end
|
736
|
+
|
737
|
+
class RescueNode < Node
|
738
|
+
def body: () -> Node?
|
739
|
+
def resbody_branches: () -> Array[ResbodyNode]
|
740
|
+
def branches: () -> Array[Node | nil]
|
741
|
+
def else_branch: () -> Node?
|
742
|
+
def else?: () -> bool
|
743
|
+
end
|
744
|
+
|
745
|
+
class ReturnNode < Node
|
746
|
+
include ParameterizedNode::WrappedArguments
|
747
|
+
end
|
748
|
+
|
749
|
+
class SelfClassNode < Node
|
750
|
+
def identifier: () -> Node
|
751
|
+
def body: () -> Node?
|
752
|
+
end
|
753
|
+
|
754
|
+
class SendNode < Node
|
755
|
+
include ParameterizedNode::RestArguments
|
756
|
+
include MethodDispatchNode
|
757
|
+
def send_type?: () -> true
|
758
|
+
attr_reader location: Parser::Source::Map::Send
|
759
|
+
alias loc location
|
760
|
+
end
|
761
|
+
|
762
|
+
class StrNode < Node
|
763
|
+
include BasicLiteralNode
|
764
|
+
def value: () -> (String | StrNode)
|
765
|
+
def single_quoted?: () -> bool
|
766
|
+
def double_quoted?: () -> bool
|
767
|
+
def character_literal?: () -> bool
|
768
|
+
def heredoc?: () -> bool
|
769
|
+
def percent_literal?: (?Symbol type) -> bool
|
770
|
+
attr_reader location: (Parser::Source::Map::Collection | Parser::Source::Map::Heredoc)
|
771
|
+
alias loc location
|
772
|
+
end
|
773
|
+
|
774
|
+
class SuperNode < Node
|
775
|
+
include ParameterizedNode
|
776
|
+
include MethodDispatchNode
|
777
|
+
def node_parts: () -> Array[untyped]
|
778
|
+
alias arguments children
|
779
|
+
end
|
780
|
+
|
781
|
+
class SymbolNode < Node
|
782
|
+
include BasicLiteralNode
|
783
|
+
def value: () -> Symbol
|
784
|
+
attr_reader location: Parser::Source::Map::Collection
|
785
|
+
alias loc location
|
786
|
+
end
|
787
|
+
|
788
|
+
class UntilNode < Node
|
789
|
+
include ConditionalNode
|
790
|
+
include ModifierNode
|
791
|
+
def keyword: () -> 'until'
|
792
|
+
def inverse_keyword: () -> 'while'
|
793
|
+
def do?: () -> bool
|
794
|
+
end
|
795
|
+
|
796
|
+
class VarNode < Node
|
797
|
+
def name: () -> Symbol
|
798
|
+
end
|
799
|
+
|
800
|
+
class WhenNode < Node
|
801
|
+
def conditions: () -> Array[Node]
|
802
|
+
def branch_index: () -> Integer
|
803
|
+
def then?: () -> bool
|
804
|
+
def body: () -> Node?
|
805
|
+
end
|
806
|
+
|
807
|
+
class WhileNode < Node
|
808
|
+
include ConditionalNode
|
809
|
+
include ModifierNode
|
810
|
+
def keyword: () -> 'while'
|
811
|
+
def inverse_keyword: () -> 'until'
|
812
|
+
def do?: () -> bool
|
813
|
+
end
|
814
|
+
|
815
|
+
class YieldNode < Node
|
816
|
+
include ParameterizedNode
|
817
|
+
include MethodDispatchNode
|
818
|
+
def node_parts: () -> Array[untyped]
|
819
|
+
alias arguments children
|
820
|
+
end
|
821
|
+
end
|
822
|
+
end
|