prism 0.24.0 → 0.25.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/BSDmakefile +58 -0
- data/CHANGELOG.md +50 -1
- data/Makefile +5 -2
- data/README.md +45 -6
- data/config.yml +499 -4
- data/docs/build_system.md +31 -0
- data/docs/configuration.md +2 -0
- data/docs/cruby_compilation.md +1 -1
- data/docs/parser_translation.md +14 -9
- data/docs/releasing.md +2 -2
- data/docs/ripper_translation.md +50 -0
- data/docs/ruby_api.md +1 -0
- data/docs/serialization.md +26 -5
- data/ext/prism/api_node.c +911 -815
- data/ext/prism/api_pack.c +9 -0
- data/ext/prism/extconf.rb +27 -11
- data/ext/prism/extension.c +313 -66
- data/ext/prism/extension.h +5 -4
- data/include/prism/ast.h +213 -64
- data/include/prism/defines.h +106 -2
- data/include/prism/diagnostic.h +134 -71
- data/include/prism/encoding.h +22 -4
- data/include/prism/node.h +93 -0
- data/include/prism/options.h +82 -7
- data/include/prism/pack.h +11 -0
- data/include/prism/parser.h +198 -53
- data/include/prism/prettyprint.h +8 -0
- data/include/prism/static_literals.h +118 -0
- data/include/prism/util/pm_buffer.h +65 -2
- data/include/prism/util/pm_constant_pool.h +18 -1
- data/include/prism/util/pm_integer.h +119 -0
- data/include/prism/util/pm_list.h +1 -1
- data/include/prism/util/pm_newline_list.h +8 -0
- data/include/prism/util/pm_string.h +26 -2
- data/include/prism/version.h +2 -2
- data/include/prism.h +59 -1
- data/lib/prism/compiler.rb +8 -1
- data/lib/prism/debug.rb +46 -3
- data/lib/prism/desugar_compiler.rb +1 -1
- data/lib/prism/dispatcher.rb +29 -0
- data/lib/prism/dot_visitor.rb +87 -16
- data/lib/prism/dsl.rb +24 -12
- data/lib/prism/ffi.rb +67 -12
- data/lib/prism/lex_compat.rb +17 -15
- data/lib/prism/mutation_compiler.rb +11 -0
- data/lib/prism/node.rb +2096 -2499
- data/lib/prism/node_ext.rb +77 -29
- data/lib/prism/pack.rb +4 -0
- data/lib/prism/parse_result/comments.rb +34 -17
- data/lib/prism/parse_result/newlines.rb +3 -1
- data/lib/prism/parse_result.rb +78 -32
- data/lib/prism/pattern.rb +16 -4
- data/lib/prism/polyfill/string.rb +12 -0
- data/lib/prism/serialize.rb +439 -102
- data/lib/prism/translation/parser/compiler.rb +152 -50
- data/lib/prism/translation/parser/lexer.rb +103 -22
- data/lib/prism/translation/parser/rubocop.rb +41 -13
- data/lib/prism/translation/parser.rb +119 -7
- data/lib/prism/translation/parser33.rb +1 -1
- data/lib/prism/translation/parser34.rb +1 -1
- data/lib/prism/translation/ripper/sexp.rb +125 -0
- data/lib/prism/translation/ripper/shim.rb +5 -0
- data/lib/prism/translation/ripper.rb +3212 -462
- data/lib/prism/translation/ruby_parser.rb +35 -18
- data/lib/prism/translation.rb +3 -1
- data/lib/prism/visitor.rb +10 -0
- data/lib/prism.rb +8 -2
- data/prism.gemspec +33 -4
- data/rbi/prism/compiler.rbi +14 -0
- data/rbi/prism/desugar_compiler.rbi +5 -0
- data/rbi/prism/mutation_compiler.rbi +5 -0
- data/rbi/prism/node.rbi +8221 -0
- data/rbi/prism/node_ext.rbi +102 -0
- data/rbi/prism/parse_result.rbi +304 -0
- data/rbi/prism/translation/parser/compiler.rbi +13 -0
- data/rbi/prism/translation/ripper/ripper_compiler.rbi +5 -0
- data/rbi/prism/translation/ripper.rbi +25 -0
- data/rbi/prism/translation/ruby_parser.rbi +11 -0
- data/rbi/prism/visitor.rbi +470 -0
- data/rbi/prism.rbi +39 -7749
- data/sig/prism/compiler.rbs +9 -0
- data/sig/prism/dispatcher.rbs +16 -0
- data/sig/prism/dot_visitor.rbs +6 -0
- data/sig/prism/dsl.rbs +462 -0
- data/sig/prism/mutation_compiler.rbs +158 -0
- data/sig/prism/node.rbs +3529 -0
- data/sig/prism/node_ext.rbs +78 -0
- data/sig/prism/pack.rbs +43 -0
- data/sig/prism/parse_result.rbs +127 -0
- data/sig/prism/pattern.rbs +13 -0
- data/sig/prism/serialize.rbs +7 -0
- data/sig/prism/visitor.rbs +168 -0
- data/sig/prism.rbs +188 -4767
- data/src/diagnostic.c +575 -230
- data/src/encoding.c +211 -108
- data/src/node.c +7526 -447
- data/src/options.c +36 -12
- data/src/pack.c +33 -17
- data/src/prettyprint.c +1294 -1385
- data/src/prism.c +3628 -1099
- data/src/regexp.c +17 -2
- data/src/serialize.c +47 -28
- data/src/static_literals.c +552 -0
- data/src/token_type.c +1 -0
- data/src/util/pm_buffer.c +147 -20
- data/src/util/pm_char.c +4 -4
- data/src/util/pm_constant_pool.c +35 -11
- data/src/util/pm_integer.c +629 -0
- data/src/util/pm_list.c +1 -1
- data/src/util/pm_newline_list.c +14 -5
- data/src/util/pm_string.c +134 -5
- data/src/util/pm_string_list.c +2 -2
- metadata +35 -6
- data/docs/ripper.md +0 -36
- data/rbi/prism_static.rbi +0 -207
- data/sig/prism_static.rbs +0 -201
@@ -0,0 +1,78 @@
|
|
1
|
+
module Prism
|
2
|
+
class InterpolatedMatchLastLineNode < Node
|
3
|
+
# Returns a numeric value that represents the flags that were used to create
|
4
|
+
# the regular expression.
|
5
|
+
def options: () -> Integer
|
6
|
+
end
|
7
|
+
|
8
|
+
class InterpolatedRegularExpressionNode < Node
|
9
|
+
# Returns a numeric value that represents the flags that were used to create
|
10
|
+
# the regular expression.
|
11
|
+
def options: () -> Integer
|
12
|
+
end
|
13
|
+
|
14
|
+
class MatchLastLineNode < Node
|
15
|
+
# Returns a numeric value that represents the flags that were used to create
|
16
|
+
# the regular expression.
|
17
|
+
def options: () -> Integer
|
18
|
+
end
|
19
|
+
|
20
|
+
class RegularExpressionNode < Node
|
21
|
+
# Returns a numeric value that represents the flags that were used to create
|
22
|
+
# the regular expression.
|
23
|
+
def options: () -> Integer
|
24
|
+
end
|
25
|
+
|
26
|
+
class InterpolatedStringNode < Node
|
27
|
+
# Returns true if this node was represented as a heredoc in the source code.
|
28
|
+
def heredoc?: () -> bool?
|
29
|
+
end
|
30
|
+
|
31
|
+
class InterpolatedXStringNode < Node
|
32
|
+
# Returns true if this node was represented as a heredoc in the source code.
|
33
|
+
def heredoc?: () -> bool?
|
34
|
+
end
|
35
|
+
|
36
|
+
class StringNode < Node
|
37
|
+
# Returns true if this node was represented as a heredoc in the source code.
|
38
|
+
def heredoc?: () -> bool?
|
39
|
+
end
|
40
|
+
|
41
|
+
class XStringNode < Node
|
42
|
+
# Returns true if this node was represented as a heredoc in the source code.
|
43
|
+
def heredoc?: () -> bool?
|
44
|
+
end
|
45
|
+
|
46
|
+
class ImaginaryNode < Node
|
47
|
+
def value: () -> Complex
|
48
|
+
end
|
49
|
+
|
50
|
+
class RationalNode < Node
|
51
|
+
def value: () -> Rational
|
52
|
+
end
|
53
|
+
|
54
|
+
class ConstantReadNode < Node
|
55
|
+
def full_name_parts: () -> [Symbol]
|
56
|
+
def full_name: () -> String
|
57
|
+
end
|
58
|
+
|
59
|
+
class ConstantPathNode < Node
|
60
|
+
class DynamicPartsInConstantPathError < StandardError
|
61
|
+
end
|
62
|
+
|
63
|
+
class MissingNodesInConstantPathError < StandardError
|
64
|
+
end
|
65
|
+
|
66
|
+
def full_name_parts: () -> Array[Symbol]
|
67
|
+
def full_name: () -> String
|
68
|
+
end
|
69
|
+
|
70
|
+
class ConstantPathTargetNode < Node
|
71
|
+
def full_name_parts: () -> Array[Symbol]
|
72
|
+
def full_name: () -> String
|
73
|
+
end
|
74
|
+
|
75
|
+
class ParametersNode < Node
|
76
|
+
def signature: () -> Array[[Symbol, Symbol] | [Symbol]]
|
77
|
+
end
|
78
|
+
end
|
data/sig/prism/pack.rbs
ADDED
@@ -0,0 +1,43 @@
|
|
1
|
+
module Prism
|
2
|
+
module Pack
|
3
|
+
type variant = :pack | :unpack
|
4
|
+
|
5
|
+
def self.parse: (Symbol version, variant variant, String source) -> Format
|
6
|
+
|
7
|
+
class Directive
|
8
|
+
type directive_type = :SPACE | :COMMENT | :INTEGER | :UTF8 | :BER | :FLOAT | :STRING_SPACE_PADDED |
|
9
|
+
:STRING_NULL_PADDED | :STRING_NULL_TERMINATED | :STRING_MSB | :STRING_LSB |
|
10
|
+
:STRING_HEX_HIGH | :STRING_HEX_LOW | :STRING_UU | :STRING_MIME | :STRING_BASE64 |
|
11
|
+
:STRING_FIXED | :STRING_POINTER | :MOVE | :BACK | :NULL
|
12
|
+
|
13
|
+
type signness = :UNSIGNED | :SIGNED | :SIGNED_NA
|
14
|
+
|
15
|
+
type endianness = :AGNOSTIC_ENDIAN | :LITTLE_ENDIAN | :BIG_ENDIAN | :NATIVE_ENDIAN | :ENDIAN_NA
|
16
|
+
|
17
|
+
type size = :SIZE_SHORT | :SIZE_INT | :SIZE_LONG | :SIZE_LONG_LONG | :SIZE_8 | :SIZE_16 | :SIZE_32 |
|
18
|
+
:SIZE_64 | :SIZE_P | :SIZE_NA
|
19
|
+
|
20
|
+
type length_type = :LENGTH_FIXED | :LENGTH_MAX | :LENGTH_RELATIVE | :LENGTH_NA
|
21
|
+
|
22
|
+
|
23
|
+
attr_reader version: Symbol
|
24
|
+
attr_reader variant: variant
|
25
|
+
attr_reader source: String
|
26
|
+
attr_reader type: directive_type
|
27
|
+
attr_reader signed: signness
|
28
|
+
attr_reader endian: endianness
|
29
|
+
attr_reader size: size
|
30
|
+
attr_reader length_type: length_type
|
31
|
+
attr_reader length: Integer
|
32
|
+
|
33
|
+
def describe: () -> String
|
34
|
+
end
|
35
|
+
|
36
|
+
class Format
|
37
|
+
attr_reader directives: Array[Directive]
|
38
|
+
attr_reader encoding: Encoding
|
39
|
+
|
40
|
+
def describe: () -> String
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
@@ -0,0 +1,127 @@
|
|
1
|
+
module Prism
|
2
|
+
class Source
|
3
|
+
attr_reader source: String
|
4
|
+
attr_reader start_line: Integer
|
5
|
+
attr_reader offsets: Array[Integer]
|
6
|
+
|
7
|
+
def initialize: (String source, ?Integer start_line, ?Array[Integer] offsets) -> void
|
8
|
+
def encoding: () -> Encoding
|
9
|
+
def slice: (Integer byte_offset, Integer length) -> String
|
10
|
+
def line: (Integer byte_offset) -> Integer
|
11
|
+
def line_start: (Integer byte_offset) -> Integer
|
12
|
+
def line_offset: (Integer byte_offset) -> Integer
|
13
|
+
def column: (Integer byte_offset) -> Integer
|
14
|
+
def character_offset: (Integer byte_offset) -> Integer
|
15
|
+
def character_column: (Integer byte_offset) -> Integer
|
16
|
+
def code_units_offset: (Integer byte_offset, Encoding encoding) -> Integer
|
17
|
+
def code_units_column: (Integer byte_offset, Encoding encoding) -> Integer
|
18
|
+
end
|
19
|
+
|
20
|
+
class Location
|
21
|
+
attr_reader source: Source
|
22
|
+
attr_reader start_offset: Integer
|
23
|
+
attr_reader length: Integer
|
24
|
+
|
25
|
+
def initialize: (Source source, Integer start_offset, Integer length) -> void
|
26
|
+
def leading_comments: () -> Array[comment]
|
27
|
+
def leading_comment: (comment) -> void
|
28
|
+
def trailing_comments: () -> Array[comment]
|
29
|
+
def trailing_comment: (comment) -> void
|
30
|
+
def comments: () -> Array[comment]
|
31
|
+
def copy: (?source: Source, ?start_offset: Integer, ?length: Integer) -> Location
|
32
|
+
def slice: () -> String
|
33
|
+
def start_character_offset: () -> Integer
|
34
|
+
def end_offset: () -> Integer
|
35
|
+
def end_character_offset: () -> Integer
|
36
|
+
def start_line: () -> Integer
|
37
|
+
def start_line_slice: () -> String
|
38
|
+
def end_line: () -> Integer
|
39
|
+
def start_column: () -> Integer
|
40
|
+
def start_character_column: () -> Integer
|
41
|
+
def end_column: () -> Integer
|
42
|
+
def end_character_column: () -> Integer
|
43
|
+
def deconstruct_keys: (Array[Symbol] keys) -> { start_offset: Integer, end_offset: Integer }
|
44
|
+
def pretty_print: (untyped q) -> untyped
|
45
|
+
def join: (Location other) -> Location
|
46
|
+
end
|
47
|
+
|
48
|
+
class Comment
|
49
|
+
attr_reader location: Location
|
50
|
+
|
51
|
+
def initialize: (Location location) -> void
|
52
|
+
def deconstruct_keys: (Array[Symbol] keys) -> { location: Location }
|
53
|
+
end
|
54
|
+
|
55
|
+
interface _Comment
|
56
|
+
def trailing?: () -> bool
|
57
|
+
end
|
58
|
+
|
59
|
+
type comment = Comment & _Comment
|
60
|
+
|
61
|
+
class InlineComment < Comment
|
62
|
+
include _Comment
|
63
|
+
end
|
64
|
+
|
65
|
+
class EmbDocComment < Comment
|
66
|
+
include _Comment
|
67
|
+
end
|
68
|
+
|
69
|
+
class MagicComment
|
70
|
+
attr_reader key_loc: Location
|
71
|
+
attr_reader value_loc: Location
|
72
|
+
|
73
|
+
def initialize: (Location key_loc, Location value_loc) -> void
|
74
|
+
|
75
|
+
def key: () -> String
|
76
|
+
def value: () -> String
|
77
|
+
|
78
|
+
def deconstruct_keys: (Array[Symbol] keys) -> { key_loc: Location, value_loc: Location }
|
79
|
+
end
|
80
|
+
|
81
|
+
class ParseError
|
82
|
+
attr_reader type: Symbol
|
83
|
+
attr_reader message: String
|
84
|
+
attr_reader location: Location
|
85
|
+
attr_reader level: Symbol
|
86
|
+
|
87
|
+
def initialize: (Symbol type, String message, Location location, Symbol level) -> void
|
88
|
+
def deconstruct_keys: (Array[Symbol] keys) -> { message: String, location: Location, level: Symbol }
|
89
|
+
end
|
90
|
+
|
91
|
+
class ParseWarning
|
92
|
+
attr_reader type: Symbol
|
93
|
+
attr_reader message: String
|
94
|
+
attr_reader location: Location
|
95
|
+
attr_reader level: Symbol
|
96
|
+
|
97
|
+
def initialize: (Symbol type, String message, Location location, Symbol level) -> void
|
98
|
+
def deconstruct_keys: (Array[Symbol] keys) -> { message: String, location: Location, level: Symbol }
|
99
|
+
end
|
100
|
+
|
101
|
+
class ParseResult[out T]
|
102
|
+
attr_reader value: T
|
103
|
+
attr_reader comments: Array[comment]
|
104
|
+
attr_reader magic_comments: Array[MagicComment]
|
105
|
+
attr_reader data_loc: Location?
|
106
|
+
attr_reader errors: Array[ParseError]
|
107
|
+
attr_reader warnings: Array[ParseWarning]
|
108
|
+
attr_reader source: Source
|
109
|
+
|
110
|
+
def initialize: (T value, Array[comment] comments, Array[MagicComment] magic_comments, Location? data_loc, Array[ParseError] errors, Array[ParseWarning] warnings, Source source) -> void
|
111
|
+
def deconstruct_keys: (Array[Symbol] keys) -> { value: T, comments: Array[comment], magic_comments: Array[MagicComment], data_loc: Location?, errors: Array[ParseError], warnings: Array[ParseWarning] }
|
112
|
+
def success?: () -> bool
|
113
|
+
def failure?: () -> bool
|
114
|
+
end
|
115
|
+
|
116
|
+
class Token
|
117
|
+
attr_reader source: Source
|
118
|
+
attr_reader type: Symbol
|
119
|
+
attr_reader value: String
|
120
|
+
attr_reader location: Location
|
121
|
+
|
122
|
+
def initialize: (Source source, Symbol type, String value, Location location) -> void
|
123
|
+
def deconstruct_keys: (Array[Symbol] keys) -> { type: Symbol, value: String, location: Location }
|
124
|
+
def pretty_print: (untyped q) -> untyped
|
125
|
+
def ==: (untyped other) -> bool
|
126
|
+
end
|
127
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
module Prism
|
2
|
+
class Pattern
|
3
|
+
class CompilationError < StandardError
|
4
|
+
end
|
5
|
+
|
6
|
+
attr_reader query: String
|
7
|
+
|
8
|
+
def initialize: (String query) -> void
|
9
|
+
def compile: () -> Proc
|
10
|
+
def scan: (Prism::node root) { (Prism::node) -> void } -> void
|
11
|
+
| (Prism::node root) -> ::Enumerator[Prism::node, void]
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,168 @@
|
|
1
|
+
# This file is generated by the templates/template.rb script and should not be
|
2
|
+
# modified manually. See templates/sig/prism/visitor.rbs.erb
|
3
|
+
# if you are looking to modify the template
|
4
|
+
|
5
|
+
module Prism
|
6
|
+
class BasicVisitor
|
7
|
+
def visit: (Prism::node?) -> void
|
8
|
+
def visit_all: (Array[Prism::node?]) -> void
|
9
|
+
def visit_child_nodes: (Prism::node) -> void
|
10
|
+
end
|
11
|
+
|
12
|
+
interface _Visitor
|
13
|
+
def visit_alias_global_variable_node: (AliasGlobalVariableNode) -> void
|
14
|
+
def visit_alias_method_node: (AliasMethodNode) -> void
|
15
|
+
def visit_alternation_pattern_node: (AlternationPatternNode) -> void
|
16
|
+
def visit_and_node: (AndNode) -> void
|
17
|
+
def visit_arguments_node: (ArgumentsNode) -> void
|
18
|
+
def visit_array_node: (ArrayNode) -> void
|
19
|
+
def visit_array_pattern_node: (ArrayPatternNode) -> void
|
20
|
+
def visit_assoc_node: (AssocNode) -> void
|
21
|
+
def visit_assoc_splat_node: (AssocSplatNode) -> void
|
22
|
+
def visit_back_reference_read_node: (BackReferenceReadNode) -> void
|
23
|
+
def visit_begin_node: (BeginNode) -> void
|
24
|
+
def visit_block_argument_node: (BlockArgumentNode) -> void
|
25
|
+
def visit_block_local_variable_node: (BlockLocalVariableNode) -> void
|
26
|
+
def visit_block_node: (BlockNode) -> void
|
27
|
+
def visit_block_parameter_node: (BlockParameterNode) -> void
|
28
|
+
def visit_block_parameters_node: (BlockParametersNode) -> void
|
29
|
+
def visit_break_node: (BreakNode) -> void
|
30
|
+
def visit_call_and_write_node: (CallAndWriteNode) -> void
|
31
|
+
def visit_call_node: (CallNode) -> void
|
32
|
+
def visit_call_operator_write_node: (CallOperatorWriteNode) -> void
|
33
|
+
def visit_call_or_write_node: (CallOrWriteNode) -> void
|
34
|
+
def visit_call_target_node: (CallTargetNode) -> void
|
35
|
+
def visit_capture_pattern_node: (CapturePatternNode) -> void
|
36
|
+
def visit_case_match_node: (CaseMatchNode) -> void
|
37
|
+
def visit_case_node: (CaseNode) -> void
|
38
|
+
def visit_class_node: (ClassNode) -> void
|
39
|
+
def visit_class_variable_and_write_node: (ClassVariableAndWriteNode) -> void
|
40
|
+
def visit_class_variable_operator_write_node: (ClassVariableOperatorWriteNode) -> void
|
41
|
+
def visit_class_variable_or_write_node: (ClassVariableOrWriteNode) -> void
|
42
|
+
def visit_class_variable_read_node: (ClassVariableReadNode) -> void
|
43
|
+
def visit_class_variable_target_node: (ClassVariableTargetNode) -> void
|
44
|
+
def visit_class_variable_write_node: (ClassVariableWriteNode) -> void
|
45
|
+
def visit_constant_and_write_node: (ConstantAndWriteNode) -> void
|
46
|
+
def visit_constant_operator_write_node: (ConstantOperatorWriteNode) -> void
|
47
|
+
def visit_constant_or_write_node: (ConstantOrWriteNode) -> void
|
48
|
+
def visit_constant_path_and_write_node: (ConstantPathAndWriteNode) -> void
|
49
|
+
def visit_constant_path_node: (ConstantPathNode) -> void
|
50
|
+
def visit_constant_path_operator_write_node: (ConstantPathOperatorWriteNode) -> void
|
51
|
+
def visit_constant_path_or_write_node: (ConstantPathOrWriteNode) -> void
|
52
|
+
def visit_constant_path_target_node: (ConstantPathTargetNode) -> void
|
53
|
+
def visit_constant_path_write_node: (ConstantPathWriteNode) -> void
|
54
|
+
def visit_constant_read_node: (ConstantReadNode) -> void
|
55
|
+
def visit_constant_target_node: (ConstantTargetNode) -> void
|
56
|
+
def visit_constant_write_node: (ConstantWriteNode) -> void
|
57
|
+
def visit_def_node: (DefNode) -> void
|
58
|
+
def visit_defined_node: (DefinedNode) -> void
|
59
|
+
def visit_else_node: (ElseNode) -> void
|
60
|
+
def visit_embedded_statements_node: (EmbeddedStatementsNode) -> void
|
61
|
+
def visit_embedded_variable_node: (EmbeddedVariableNode) -> void
|
62
|
+
def visit_ensure_node: (EnsureNode) -> void
|
63
|
+
def visit_false_node: (FalseNode) -> void
|
64
|
+
def visit_find_pattern_node: (FindPatternNode) -> void
|
65
|
+
def visit_flip_flop_node: (FlipFlopNode) -> void
|
66
|
+
def visit_float_node: (FloatNode) -> void
|
67
|
+
def visit_for_node: (ForNode) -> void
|
68
|
+
def visit_forwarding_arguments_node: (ForwardingArgumentsNode) -> void
|
69
|
+
def visit_forwarding_parameter_node: (ForwardingParameterNode) -> void
|
70
|
+
def visit_forwarding_super_node: (ForwardingSuperNode) -> void
|
71
|
+
def visit_global_variable_and_write_node: (GlobalVariableAndWriteNode) -> void
|
72
|
+
def visit_global_variable_operator_write_node: (GlobalVariableOperatorWriteNode) -> void
|
73
|
+
def visit_global_variable_or_write_node: (GlobalVariableOrWriteNode) -> void
|
74
|
+
def visit_global_variable_read_node: (GlobalVariableReadNode) -> void
|
75
|
+
def visit_global_variable_target_node: (GlobalVariableTargetNode) -> void
|
76
|
+
def visit_global_variable_write_node: (GlobalVariableWriteNode) -> void
|
77
|
+
def visit_hash_node: (HashNode) -> void
|
78
|
+
def visit_hash_pattern_node: (HashPatternNode) -> void
|
79
|
+
def visit_if_node: (IfNode) -> void
|
80
|
+
def visit_imaginary_node: (ImaginaryNode) -> void
|
81
|
+
def visit_implicit_node: (ImplicitNode) -> void
|
82
|
+
def visit_implicit_rest_node: (ImplicitRestNode) -> void
|
83
|
+
def visit_in_node: (InNode) -> void
|
84
|
+
def visit_index_and_write_node: (IndexAndWriteNode) -> void
|
85
|
+
def visit_index_operator_write_node: (IndexOperatorWriteNode) -> void
|
86
|
+
def visit_index_or_write_node: (IndexOrWriteNode) -> void
|
87
|
+
def visit_index_target_node: (IndexTargetNode) -> void
|
88
|
+
def visit_instance_variable_and_write_node: (InstanceVariableAndWriteNode) -> void
|
89
|
+
def visit_instance_variable_operator_write_node: (InstanceVariableOperatorWriteNode) -> void
|
90
|
+
def visit_instance_variable_or_write_node: (InstanceVariableOrWriteNode) -> void
|
91
|
+
def visit_instance_variable_read_node: (InstanceVariableReadNode) -> void
|
92
|
+
def visit_instance_variable_target_node: (InstanceVariableTargetNode) -> void
|
93
|
+
def visit_instance_variable_write_node: (InstanceVariableWriteNode) -> void
|
94
|
+
def visit_integer_node: (IntegerNode) -> void
|
95
|
+
def visit_interpolated_match_last_line_node: (InterpolatedMatchLastLineNode) -> void
|
96
|
+
def visit_interpolated_regular_expression_node: (InterpolatedRegularExpressionNode) -> void
|
97
|
+
def visit_interpolated_string_node: (InterpolatedStringNode) -> void
|
98
|
+
def visit_interpolated_symbol_node: (InterpolatedSymbolNode) -> void
|
99
|
+
def visit_interpolated_x_string_node: (InterpolatedXStringNode) -> void
|
100
|
+
def visit_it_parameters_node: (ItParametersNode) -> void
|
101
|
+
def visit_keyword_hash_node: (KeywordHashNode) -> void
|
102
|
+
def visit_keyword_rest_parameter_node: (KeywordRestParameterNode) -> void
|
103
|
+
def visit_lambda_node: (LambdaNode) -> void
|
104
|
+
def visit_local_variable_and_write_node: (LocalVariableAndWriteNode) -> void
|
105
|
+
def visit_local_variable_operator_write_node: (LocalVariableOperatorWriteNode) -> void
|
106
|
+
def visit_local_variable_or_write_node: (LocalVariableOrWriteNode) -> void
|
107
|
+
def visit_local_variable_read_node: (LocalVariableReadNode) -> void
|
108
|
+
def visit_local_variable_target_node: (LocalVariableTargetNode) -> void
|
109
|
+
def visit_local_variable_write_node: (LocalVariableWriteNode) -> void
|
110
|
+
def visit_match_last_line_node: (MatchLastLineNode) -> void
|
111
|
+
def visit_match_predicate_node: (MatchPredicateNode) -> void
|
112
|
+
def visit_match_required_node: (MatchRequiredNode) -> void
|
113
|
+
def visit_match_write_node: (MatchWriteNode) -> void
|
114
|
+
def visit_missing_node: (MissingNode) -> void
|
115
|
+
def visit_module_node: (ModuleNode) -> void
|
116
|
+
def visit_multi_target_node: (MultiTargetNode) -> void
|
117
|
+
def visit_multi_write_node: (MultiWriteNode) -> void
|
118
|
+
def visit_next_node: (NextNode) -> void
|
119
|
+
def visit_nil_node: (NilNode) -> void
|
120
|
+
def visit_no_keywords_parameter_node: (NoKeywordsParameterNode) -> void
|
121
|
+
def visit_numbered_parameters_node: (NumberedParametersNode) -> void
|
122
|
+
def visit_numbered_reference_read_node: (NumberedReferenceReadNode) -> void
|
123
|
+
def visit_optional_keyword_parameter_node: (OptionalKeywordParameterNode) -> void
|
124
|
+
def visit_optional_parameter_node: (OptionalParameterNode) -> void
|
125
|
+
def visit_or_node: (OrNode) -> void
|
126
|
+
def visit_parameters_node: (ParametersNode) -> void
|
127
|
+
def visit_parentheses_node: (ParenthesesNode) -> void
|
128
|
+
def visit_pinned_expression_node: (PinnedExpressionNode) -> void
|
129
|
+
def visit_pinned_variable_node: (PinnedVariableNode) -> void
|
130
|
+
def visit_post_execution_node: (PostExecutionNode) -> void
|
131
|
+
def visit_pre_execution_node: (PreExecutionNode) -> void
|
132
|
+
def visit_program_node: (ProgramNode) -> void
|
133
|
+
def visit_range_node: (RangeNode) -> void
|
134
|
+
def visit_rational_node: (RationalNode) -> void
|
135
|
+
def visit_redo_node: (RedoNode) -> void
|
136
|
+
def visit_regular_expression_node: (RegularExpressionNode) -> void
|
137
|
+
def visit_required_keyword_parameter_node: (RequiredKeywordParameterNode) -> void
|
138
|
+
def visit_required_parameter_node: (RequiredParameterNode) -> void
|
139
|
+
def visit_rescue_modifier_node: (RescueModifierNode) -> void
|
140
|
+
def visit_rescue_node: (RescueNode) -> void
|
141
|
+
def visit_rest_parameter_node: (RestParameterNode) -> void
|
142
|
+
def visit_retry_node: (RetryNode) -> void
|
143
|
+
def visit_return_node: (ReturnNode) -> void
|
144
|
+
def visit_self_node: (SelfNode) -> void
|
145
|
+
def visit_shareable_constant_node: (ShareableConstantNode) -> void
|
146
|
+
def visit_singleton_class_node: (SingletonClassNode) -> void
|
147
|
+
def visit_source_encoding_node: (SourceEncodingNode) -> void
|
148
|
+
def visit_source_file_node: (SourceFileNode) -> void
|
149
|
+
def visit_source_line_node: (SourceLineNode) -> void
|
150
|
+
def visit_splat_node: (SplatNode) -> void
|
151
|
+
def visit_statements_node: (StatementsNode) -> void
|
152
|
+
def visit_string_node: (StringNode) -> void
|
153
|
+
def visit_super_node: (SuperNode) -> void
|
154
|
+
def visit_symbol_node: (SymbolNode) -> void
|
155
|
+
def visit_true_node: (TrueNode) -> void
|
156
|
+
def visit_undef_node: (UndefNode) -> void
|
157
|
+
def visit_unless_node: (UnlessNode) -> void
|
158
|
+
def visit_until_node: (UntilNode) -> void
|
159
|
+
def visit_when_node: (WhenNode) -> void
|
160
|
+
def visit_while_node: (WhileNode) -> void
|
161
|
+
def visit_x_string_node: (XStringNode) -> void
|
162
|
+
def visit_yield_node: (YieldNode) -> void
|
163
|
+
end
|
164
|
+
|
165
|
+
class Visitor < BasicVisitor
|
166
|
+
include _Visitor
|
167
|
+
end
|
168
|
+
end
|