Spec-Zone.ru › Ruby 3.4
  1. Prism::
  2. Compiler

class Prism::Compiler

Компилятор — это посетитель, который возвращает значение каждого узла при его посещении. Это отличается от посетителя, который только обходит дерево. Такой подход может быть полезен, когда нужно скомпилировать дерево в другой формат.

Например, чтобы построить представление дерева в виде S-выражений, можно написать:

class SExpressions < Prism::Compiler
  def visit_arguments_node(node) = [:arguments, super]
  def visit_call_node(node) = [:call, super]
  def visit_integer_node(node) = [:integer]
  def visit_program_node(node) = [:program, super]
end

Prism.parse("1 + 2").value.accept(SExpressions.new)
# => [:program, [[[:call, [[:integer], [:arguments, [[:integer]]]]]]]]

Публичные методы экземпляра

visit (node) Показать исходный код
# File lib/prism/compiler.rb, line 32
def visit(node)
  node&.accept(self)
end

Посетить отдельный узел.

visit_alias_global_variable_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 47
def visit_alias_global_variable_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел AliasGlobalVariableNode

visit_alias_method_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 52
def visit_alias_method_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел AliasMethodNode

visit_all (nodes) Показать исходный код
# File lib/prism/compiler.rb, line 37
def visit_all(nodes)
  nodes.map { |node| node&.accept(self) }
end

Посетить список узлов.

visit_alternation_pattern_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 57
def visit_alternation_pattern_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел AlternationPatternNode

visit_and_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 62
def visit_and_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел AndNode

visit_arguments_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 67
def visit_arguments_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел ArgumentsNode

visit_array_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 72
def visit_array_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел ArrayNode

visit_array_pattern_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 77
def visit_array_pattern_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел ArrayPatternNode

visit_assoc_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 82
def visit_assoc_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел AssocNode

visit_assoc_splat_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 87
def visit_assoc_splat_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел AssocSplatNode

visit_back_reference_read_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 92
def visit_back_reference_read_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел BackReferenceReadNode

visit_begin_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 97
def visit_begin_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел BeginNode

visit_block_argument_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 102
def visit_block_argument_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел BlockArgumentNode

visit_block_local_variable_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 107
def visit_block_local_variable_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел BlockLocalVariableNode

visit_block_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 112
def visit_block_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел BlockNode

visit_block_parameter_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 117
def visit_block_parameter_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел BlockParameterNode

visit_block_parameters_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 122
def visit_block_parameters_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел BlockParametersNode

visit_break_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 127
def visit_break_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел BreakNode

visit_call_and_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 132
def visit_call_and_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел CallAndWriteNode

visit_call_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 137
def visit_call_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел CallNode

visit_call_operator_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 142
def visit_call_operator_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел CallOperatorWriteNode

visit_call_or_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 147
def visit_call_or_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел CallOrWriteNode

visit_call_target_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 152
def visit_call_target_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел CallTargetNode

visit_capture_pattern_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 157
def visit_capture_pattern_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел CapturePatternNode

visit_case_match_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 162
def visit_case_match_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел CaseMatchNode

visit_case_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 167
def visit_case_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел CaseNode

visit_child_nodes (node) Показать исходный код
# File lib/prism/compiler.rb, line 42
def visit_child_nodes(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Посетить дочерние узлы указанного узла.

visit_class_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 172
def visit_class_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел ClassNode

visit_class_variable_and_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 177
def visit_class_variable_and_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел ClassVariableAndWriteNode

visit_class_variable_operator_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 182
def visit_class_variable_operator_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел ClassVariableOperatorWriteNode

visit_class_variable_or_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 187
def visit_class_variable_or_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел ClassVariableOrWriteNode

visit_class_variable_read_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 192
def visit_class_variable_read_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел ClassVariableReadNode

visit_class_variable_target_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 197
def visit_class_variable_target_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел ClassVariableTargetNode

visit_class_variable_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 202
def visit_class_variable_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел ClassVariableWriteNode

visit_constant_and_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 207
def visit_constant_and_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел ConstantAndWriteNode

visit_constant_operator_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 212
def visit_constant_operator_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел ConstantOperatorWriteNode

visit_constant_or_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 217
def visit_constant_or_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел ConstantOrWriteNode

visit_constant_path_and_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 222
def visit_constant_path_and_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел ConstantPathAndWriteNode

visit_constant_path_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 227
def visit_constant_path_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел ConstantPathNode

visit_constant_path_operator_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 232
def visit_constant_path_operator_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел ConstantPathOperatorWriteNode

visit_constant_path_or_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 237
def visit_constant_path_or_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел ConstantPathOrWriteNode

visit_constant_path_target_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 242
def visit_constant_path_target_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел ConstantPathTargetNode

visit_constant_path_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 247
def visit_constant_path_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел ConstantPathWriteNode

visit_constant_read_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 252
def visit_constant_read_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел ConstantReadNode

visit_constant_target_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 257
def visit_constant_target_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел ConstantTargetNode

visit_constant_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 262
def visit_constant_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел ConstantWriteNode

visit_def_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 267
def visit_def_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел DefNode

visit_defined_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 272
def visit_defined_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел DefinedNode

visit_else_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 277
def visit_else_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел ElseNode

visit_embedded_statements_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 282
def visit_embedded_statements_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел EmbeddedStatementsNode

visit_embedded_variable_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 287
def visit_embedded_variable_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилировать узел EmbeddedVariableNode

visit_ensure_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 292
def visit_ensure_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел EnsureNode

visit_false_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 297
def visit_false_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел FalseNode

visit_find_pattern_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 302
def visit_find_pattern_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел FindPatternNode

visit_flip_flop_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 307
def visit_flip_flop_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел FlipFlopNode

visit_float_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 312
def visit_float_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел FloatNode

visit_for_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 317
def visit_for_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел ForNode

visit_forwarding_arguments_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 322
def visit_forwarding_arguments_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел ForwardingArgumentsNode

visit_forwarding_parameter_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 327
def visit_forwarding_parameter_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел ForwardingParameterNode

visit_forwarding_super_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 332
def visit_forwarding_super_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел ForwardingSuperNode

visit_global_variable_and_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 337
def visit_global_variable_and_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел GlobalVariableAndWriteNode

visit_global_variable_operator_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 342
def visit_global_variable_operator_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел GlobalVariableOperatorWriteNode

visit_global_variable_or_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 347
def visit_global_variable_or_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел GlobalVariableOrWriteNode

visit_global_variable_read_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 352
def visit_global_variable_read_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел GlobalVariableReadNode

visit_global_variable_target_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 357
def visit_global_variable_target_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел GlobalVariableTargetNode

visit_global_variable_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 362
def visit_global_variable_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел GlobalVariableWriteNode

visit_hash_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 367
def visit_hash_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел HashNode

visit_hash_pattern_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 372
def visit_hash_pattern_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел HashPatternNode

visit_if_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 377
def visit_if_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел IfNode

visit_imaginary_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 382
def visit_imaginary_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел ImaginaryNode

visit_implicit_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 387
def visit_implicit_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел ImplicitNode

visit_implicit_rest_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 392
def visit_implicit_rest_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел ImplicitRestNode

visit_in_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 397
def visit_in_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел InNode

visit_index_and_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 402
def visit_index_and_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел IndexAndWriteNode

visit_index_operator_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 407
def visit_index_operator_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел IndexOperatorWriteNode

visit_index_or_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 412
def visit_index_or_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел IndexOrWriteNode

visit_index_target_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 417
def visit_index_target_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел IndexTargetNode

visit_instance_variable_and_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 422
def visit_instance_variable_and_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел InstanceVariableAndWriteNode

visit_instance_variable_operator_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 427
def visit_instance_variable_operator_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел InstanceVariableOperatorWriteNode

visit_instance_variable_or_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 432
def visit_instance_variable_or_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел InstanceVariableOrWriteNode

visit_instance_variable_read_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 437
def visit_instance_variable_read_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел InstanceVariableReadNode

visit_instance_variable_target_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 442
def visit_instance_variable_target_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел InstanceVariableTargetNode

visit_instance_variable_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 447
def visit_instance_variable_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел InstanceVariableWriteNode

visit_integer_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 452
def visit_integer_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел IntegerNode

visit_interpolated_match_last_line_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 457
def visit_interpolated_match_last_line_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел InterpolatedMatchLastLineNode

visit_interpolated_regular_expression_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 462
def visit_interpolated_regular_expression_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел InterpolatedRegularExpressionNode

visit_interpolated_string_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 467
def visit_interpolated_string_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел InterpolatedStringNode

visit_interpolated_symbol_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 472
def visit_interpolated_symbol_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел InterpolatedSymbolNode

visit_interpolated_x_string_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 477
def visit_interpolated_x_string_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел InterpolatedXStringNode

visit_it_local_variable_read_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 482
def visit_it_local_variable_read_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел ItLocalVariableReadNode

visit_it_parameters_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 487
def visit_it_parameters_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел ItParametersNode

visit_keyword_hash_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 492
def visit_keyword_hash_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел KeywordHashNode

visit_keyword_rest_parameter_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 497
def visit_keyword_rest_parameter_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел KeywordRestParameterNode

visit_lambda_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 502
def visit_lambda_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел LambdaNode

visit_local_variable_and_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 507
def visit_local_variable_and_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел LocalVariableAndWriteNode

visit_local_variable_operator_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 512
def visit_local_variable_operator_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел LocalVariableOperatorWriteNode

visit_local_variable_or_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 517
def visit_local_variable_or_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел LocalVariableOrWriteNode

visit_local_variable_read_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 522
def visit_local_variable_read_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел LocalVariableReadNode

visit_local_variable_target_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 527
def visit_local_variable_target_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел LocalVariableTargetNode

visit_local_variable_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 532
def visit_local_variable_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел LocalVariableWriteNode

visit_match_last_line_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 537
def visit_match_last_line_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел MatchLastLineNode

visit_match_predicate_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 542
def visit_match_predicate_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел MatchPredicateNode

visit_match_required_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 547
def visit_match_required_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел MatchRequiredNode

visit_match_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 552
def visit_match_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел MatchWriteNode

visit_missing_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 557
def visit_missing_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел MissingNode

visit_module_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 562
def visit_module_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел ModuleNode

visit_multi_target_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 567
def visit_multi_target_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел MultiTargetNode

visit_multi_write_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 572
def visit_multi_write_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел MultiWriteNode

visit_next_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 577
def visit_next_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел NextNode

visit_nil_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 582
def visit_nil_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел NilNode

visit_no_keywords_parameter_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 587
def visit_no_keywords_parameter_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел NoKeywordsParameterNode

visit_numbered_parameters_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 592
def visit_numbered_parameters_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел NumberedParametersNode

visit_numbered_reference_read_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 597
def visit_numbered_reference_read_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел NumberedReferenceReadNode

visit_optional_keyword_parameter_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 602
def visit_optional_keyword_parameter_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел OptionalKeywordParameterNode

visit_optional_parameter_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 607
def visit_optional_parameter_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел OptionalParameterNode

visit_or_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 612
def visit_or_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел OrNode

visit_parameters_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 617
def visit_parameters_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел ParametersNode

visit_parentheses_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 622
def visit_parentheses_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел ParenthesesNode

visit_pinned_expression_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 627
def visit_pinned_expression_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел PinnedExpressionNode

visit_pinned_variable_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 632
def visit_pinned_variable_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел PinnedVariableNode

visit_post_execution_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 637
def visit_post_execution_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел PostExecutionNode

visit_pre_execution_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 642
def visit_pre_execution_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел PreExecutionNode

visit_program_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 647
def visit_program_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел ProgramNode

visit_range_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 652
def visit_range_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел RangeNode

visit_rational_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 657
def visit_rational_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел RationalNode

visit_redo_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 662
def visit_redo_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел RedoNode

visit_regular_expression_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 667
def visit_regular_expression_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел RegularExpressionNode

visit_required_keyword_parameter_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 672
def visit_required_keyword_parameter_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел RequiredKeywordParameterNode

visit_required_parameter_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 677
def visit_required_parameter_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел RequiredParameterNode

visit_rescue_modifier_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 682
def visit_rescue_modifier_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел RescueModifierNode

visit_rescue_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 687
def visit_rescue_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел RescueNode

visit_rest_parameter_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 692
def visit_rest_parameter_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел RestParameterNode

visit_retry_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 697
def visit_retry_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел RetryNode

visit_return_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 702
def visit_return_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел ReturnNode

visit_self_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 707
def visit_self_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел SelfNode

visit_shareable_constant_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 712
def visit_shareable_constant_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел ShareableConstantNode

visit_singleton_class_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 717
def visit_singleton_class_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел SingletonClassNode

visit_source_encoding_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 722
def visit_source_encoding_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел SourceEncodingNode

visit_source_file_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 727
def visit_source_file_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел SourceFileNode

visit_source_line_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 732
def visit_source_line_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел SourceLineNode

visit_splat_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 737
def visit_splat_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел SplatNode

visit_statements_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 742
def visit_statements_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел StatementsNode

visit_string_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 747
def visit_string_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел StringNode

visit_super_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 752
def visit_super_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел SuperNode

visit_symbol_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 757
def visit_symbol_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел SymbolNode

visit_true_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 762
def visit_true_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел TrueNode

visit_undef_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 767
def visit_undef_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел UndefNode

visit_unless_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 772
def visit_unless_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел UnlessNode

visit_until_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 777
def visit_until_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел UntilNode

visit_when_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 782
def visit_when_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел WhenNode

visit_while_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 787
def visit_while_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел WhileNode

visit_x_string_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 792
def visit_x_string_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел XStringNode

visit_yield_node (node) Показать исходный код
# File lib/prism/compiler.rb, line 797
def visit_yield_node(node)
  node.compact_child_nodes.map { |node| node.accept(self) }
end

Компилирует узел YieldNode

Ruby Core © 1993–2025 Yukihiro Matsumoto
Licensed under the Ruby License.
Ruby Standard Library © contributors
Licensed under their own licenses.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API