aboutsummaryrefslogtreecommitdiff
path: root/tools/ruby-tools/sorbet/rbi/gems/prism@1.0.0.rbi
diff options
context:
space:
mode:
Diffstat (limited to 'tools/ruby-tools/sorbet/rbi/gems/prism@1.0.0.rbi')
-rw-r--r--tools/ruby-tools/sorbet/rbi/gems/prism@1.0.0.rbi34144
1 files changed, 0 insertions, 34144 deletions
diff --git a/tools/ruby-tools/sorbet/rbi/gems/prism@1.0.0.rbi b/tools/ruby-tools/sorbet/rbi/gems/prism@1.0.0.rbi
deleted file mode 100644
index 2774c45..0000000
--- a/tools/ruby-tools/sorbet/rbi/gems/prism@1.0.0.rbi
+++ /dev/null
@@ -1,34144 +0,0 @@
-# typed: true
-
-# DO NOT EDIT MANUALLY
-# This is an autogenerated file for types exported from the `prism` gem.
-# Please instead update this file by running `bin/tapioca gem prism`.
-
-
-# typed: strict
-
-# =begin
-# This file is generated by the templates/template.rb script and should not be
-# modified manually. See templates/rbi/prism/dsl.rbi.erb
-# if you are looking to modify the template
-# =end
-# =begin
-# This file is generated by the templates/template.rb script and should not be
-# modified manually. See templates/rbi/prism/node.rbi.erb
-# if you are looking to modify the template
-# =end
-# =begin
-# This file is generated by the templates/template.rb script and should not be
-# modified manually. See templates/rbi/prism/visitor.rbi.erb
-# if you are looking to modify the template
-# =end
-
-# We keep these shims in here because our client libraries might not have parser
-# in their bundle.
-module Parser; end
-
-class Parser::Base; end
-
-# The Prism Ruby parser.
-#
-# "Parsing Ruby is suddenly manageable!"
-# - You, hopefully
-#
-# source://prism//lib/prism.rb#8
-module Prism
- class << self
- # Mirror the Prism.dump API by using the serialization API.
- def dump(*_arg0); end
-
- # Mirror the Prism.dump_file API by using the serialization API.
- def dump_file(*_arg0); end
-
- # Mirror the Prism.lex API by using the serialization API.
- def lex(*_arg0); end
-
- # :call-seq:
- # Prism::lex_compat(source, **options) -> LexCompat::Result
- #
- # Returns a parse result whose value is an array of tokens that closely
- # resembles the return value of Ripper::lex. The main difference is that the
- # `:on_sp` token is not emitted.
- #
- # For supported options, see Prism::parse.
- #
- # source://prism//lib/prism.rb#45
- sig { params(source: String, options: T::Hash[Symbol, T.untyped]).returns(Prism::LexCompat::Result) }
- def lex_compat(source, **options); end
-
- # Mirror the Prism.lex_file API by using the serialization API.
- def lex_file(*_arg0); end
-
- # :call-seq:
- # Prism::lex_ripper(source) -> Array
- #
- # This lexes with the Ripper lex. It drops any space events but otherwise
- # returns the same tokens. Raises SyntaxError if the syntax in source is
- # invalid.
- #
- # source://prism//lib/prism.rb#55
- sig { params(source: String).returns(T::Array[T.untyped]) }
- def lex_ripper(source); end
-
- # :call-seq:
- # Prism::load(source, serialized) -> ParseResult
- #
- # Load the serialized AST using the source as a reference into a tree.
- #
- # source://prism//lib/prism.rb#63
- sig { params(source: String, serialized: String).returns(Prism::ParseResult) }
- def load(source, serialized); end
-
- # Mirror the Prism.parse API by using the serialization API.
- def parse(*_arg0); end
-
- # Mirror the Prism.parse_comments API by using the serialization API.
- def parse_comments(*_arg0); end
-
- # Mirror the Prism.parse_failure? API by using the serialization API.
- #
- # @return [Boolean]
- def parse_failure?(*_arg0); end
-
- # Mirror the Prism.parse_file API by using the serialization API. This uses
- # native strings instead of Ruby strings because it allows us to use mmap
- # when it is available.
- def parse_file(*_arg0); end
-
- # Mirror the Prism.parse_file_comments API by using the serialization
- # API. This uses native strings instead of Ruby strings because it allows us
- # to use mmap when it is available.
- def parse_file_comments(*_arg0); end
-
- # Mirror the Prism.parse_file_failure? API by using the serialization API.
- #
- # @return [Boolean]
- def parse_file_failure?(*_arg0); end
-
- # Mirror the Prism.parse_file_success? API by using the serialization API.
- #
- # @return [Boolean]
- def parse_file_success?(*_arg0); end
-
- # Mirror the Prism.parse_lex API by using the serialization API.
- def parse_lex(*_arg0); end
-
- # Mirror the Prism.parse_lex_file API by using the serialization API.
- def parse_lex_file(*_arg0); end
-
- # Mirror the Prism.parse_stream API by using the serialization API.
- def parse_stream(*_arg0); end
-
- # Mirror the Prism.parse_success? API by using the serialization API.
- #
- # @return [Boolean]
- def parse_success?(*_arg0); end
-
- # Mirror the Prism.profile API by using the serialization API.
- def profile(*_arg0); end
-
- # Mirror the Prism.profile_file API by using the serialization API.
- def profile_file(*_arg0); end
- end
-end
-
-# Specialized version of Prism::Source for source code that includes ASCII
-# characters only. This class is used to apply performance optimizations that
-# cannot be applied to sources that include multibyte characters. Sources that
-# include multibyte characters are represented by the Prism::Source class.
-#
-# source://prism//lib/prism/parse_result.rb#135
-class Prism::ASCIISource < ::Prism::Source
- # Return the column number in characters for the given byte offset.
- #
- # source://prism//lib/prism/parse_result.rb#142
- sig { params(byte_offset: Integer).returns(Integer) }
- def character_column(byte_offset); end
-
- # Return the character offset for the given byte offset.
- #
- # source://prism//lib/prism/parse_result.rb#137
- sig { params(byte_offset: Integer).returns(Integer) }
- def character_offset(byte_offset); end
-
- # Specialized version of `code_units_column` that does not depend on
- # `code_units_offset`, which is a more expensive operation. This is
- # essentialy the same as `Prism::Source#column`.
- #
- # source://prism//lib/prism/parse_result.rb#159
- sig { params(byte_offset: Integer, encoding: Encoding).returns(Integer) }
- def code_units_column(byte_offset, encoding); end
-
- # Returns the offset from the start of the file for the given byte offset
- # counting in code units for the given encoding.
- #
- # This method is tested with UTF-8, UTF-16, and UTF-32. If there is the
- # concept of code units that differs from the number of characters in other
- # encodings, it is not captured here.
- #
- # source://prism//lib/prism/parse_result.rb#152
- sig { params(byte_offset: Integer, encoding: Encoding).returns(Integer) }
- def code_units_offset(byte_offset, encoding); end
-end
-
-# Represents the use of the `alias` keyword to alias a global variable.
-#
-# alias $foo $bar
-# ^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#227
-class Prism::AliasGlobalVariableNode < ::Prism::Node
- # Initialize a new AliasGlobalVariableNode node.
- #
- # @return [AliasGlobalVariableNode] a new instance of AliasGlobalVariableNode
- #
- # source://prism//lib/prism/node.rb#229
- def initialize(source, node_id, location, flags, new_name, old_name, keyword_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#316
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#240
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#245
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#255
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#250
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?new_name: GlobalVariableReadNode | BackReferenceReadNode | NumberedReferenceReadNode, ?old_name: GlobalVariableReadNode | BackReferenceReadNode | NumberedReferenceReadNode | SymbolNode | MissingNode, ?keyword_loc: Location) -> AliasGlobalVariableNode
- #
- # source://prism//lib/prism/node.rb#260
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), new_name: T.unsafe(nil), old_name: T.unsafe(nil), keyword_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#245
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, new_name: GlobalVariableReadNode | BackReferenceReadNode | NumberedReferenceReadNode, old_name: GlobalVariableReadNode | BackReferenceReadNode | NumberedReferenceReadNode | SymbolNode | MissingNode, keyword_loc: Location }
- #
- # source://prism//lib/prism/node.rb#268
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#300
- sig { override.returns(String) }
- def inspect; end
-
- # def keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#295
- def keyword; end
-
- # The location of the `alias` keyword.
- #
- # alias $foo $bar
- # ^^^^^
- #
- # source://prism//lib/prism/node.rb#288
- def keyword_loc; end
-
- # Represents the new name of the global variable that can be used after aliasing.
- #
- # alias $foo $bar
- # ^^^^
- #
- # source://prism//lib/prism/node.rb#276
- def new_name; end
-
- # Represents the old name of the global variable that can be used before aliasing.
- #
- # alias $foo $bar
- # ^^^^
- #
- # source://prism//lib/prism/node.rb#282
- def old_name; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#305
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#310
- def type; end
- end
-end
-
-# Represents the use of the `alias` keyword to alias a method.
-#
-# alias foo bar
-# ^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#328
-class Prism::AliasMethodNode < ::Prism::Node
- # Initialize a new AliasMethodNode node.
- #
- # @return [AliasMethodNode] a new instance of AliasMethodNode
- #
- # source://prism//lib/prism/node.rb#330
- def initialize(source, node_id, location, flags, new_name, old_name, keyword_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#408
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#341
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#346
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#356
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#351
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?new_name: SymbolNode | InterpolatedSymbolNode, ?old_name: SymbolNode | InterpolatedSymbolNode | GlobalVariableReadNode | MissingNode, ?keyword_loc: Location) -> AliasMethodNode
- #
- # source://prism//lib/prism/node.rb#361
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), new_name: T.unsafe(nil), old_name: T.unsafe(nil), keyword_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#346
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, new_name: SymbolNode | InterpolatedSymbolNode, old_name: SymbolNode | InterpolatedSymbolNode | GlobalVariableReadNode | MissingNode, keyword_loc: Location }
- #
- # source://prism//lib/prism/node.rb#369
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#392
- sig { override.returns(String) }
- def inspect; end
-
- # def keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#387
- def keyword; end
-
- # attr_reader keyword_loc: Location
- #
- # source://prism//lib/prism/node.rb#380
- def keyword_loc; end
-
- # attr_reader new_name: SymbolNode | InterpolatedSymbolNode
- #
- # source://prism//lib/prism/node.rb#374
- def new_name; end
-
- # attr_reader old_name: SymbolNode | InterpolatedSymbolNode | GlobalVariableReadNode | MissingNode
- #
- # source://prism//lib/prism/node.rb#377
- def old_name; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#397
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#402
- def type; end
- end
-end
-
-# Represents an alternation pattern in pattern matching.
-#
-# foo => bar | baz
-# ^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#420
-class Prism::AlternationPatternNode < ::Prism::Node
- # Initialize a new AlternationPatternNode node.
- #
- # @return [AlternationPatternNode] a new instance of AlternationPatternNode
- #
- # source://prism//lib/prism/node.rb#422
- def initialize(source, node_id, location, flags, left, right, operator_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#500
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#433
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#438
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#448
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#443
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?left: Prism::node, ?right: Prism::node, ?operator_loc: Location) -> AlternationPatternNode
- #
- # source://prism//lib/prism/node.rb#453
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), left: T.unsafe(nil), right: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#438
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, left: Prism::node, right: Prism::node, operator_loc: Location }
- #
- # source://prism//lib/prism/node.rb#461
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#484
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader left: Prism::node
- #
- # source://prism//lib/prism/node.rb#466
- def left; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#479
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#472
- def operator_loc; end
-
- # attr_reader right: Prism::node
- #
- # source://prism//lib/prism/node.rb#469
- def right; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#489
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#494
- def type; end
- end
-end
-
-# Represents the use of the `&&` operator or the `and` keyword.
-#
-# left and right
-# ^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#512
-class Prism::AndNode < ::Prism::Node
- # Initialize a new AndNode node.
- #
- # @return [AndNode] a new instance of AndNode
- #
- # source://prism//lib/prism/node.rb#514
- def initialize(source, node_id, location, flags, left, right, operator_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#607
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#525
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#530
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#540
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#535
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?left: Prism::node, ?right: Prism::node, ?operator_loc: Location) -> AndNode
- #
- # source://prism//lib/prism/node.rb#545
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), left: T.unsafe(nil), right: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#530
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, left: Prism::node, right: Prism::node, operator_loc: Location }
- #
- # source://prism//lib/prism/node.rb#553
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#591
- sig { override.returns(String) }
- def inspect; end
-
- # Represents the left side of the expression. It can be any [non-void expression](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#non-void-expression).
- #
- # left and right
- # ^^^^
- #
- # 1 && 2
- # ^
- #
- # source://prism//lib/prism/node.rb#564
- def left; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#586
- def operator; end
-
- # The location of the `and` keyword or the `&&` operator.
- #
- # left and right
- # ^^^
- #
- # source://prism//lib/prism/node.rb#579
- def operator_loc; end
-
- # Represents the right side of the expression. It can be any [non-void expression](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#non-void-expression).
- #
- # left && right
- # ^^^^^
- #
- # 1 and 2
- # ^
- #
- # source://prism//lib/prism/node.rb#573
- def right; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#596
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#601
- def type; end
- end
-end
-
-# Represents a set of arguments to a method or a keyword.
-#
-# return foo, bar, baz
-# ^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#619
-class Prism::ArgumentsNode < ::Prism::Node
- # Initialize a new ArgumentsNode node.
- #
- # @return [ArgumentsNode] a new instance of ArgumentsNode
- #
- # source://prism//lib/prism/node.rb#621
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- arguments: T::Array[Prism::Node]
- ).void
- end
- def initialize(source, node_id, location, flags, arguments); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#697
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#630
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # attr_reader arguments: Array[Prism::node]
- #
- # source://prism//lib/prism/node.rb#678
- sig { returns(T::Array[Prism::Node]) }
- def arguments; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#635
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#645
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#640
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def contains_keyword_splat?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#668
- sig { returns(T::Boolean) }
- def contains_keyword_splat?; end
-
- # def contains_keywords?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#663
- sig { returns(T::Boolean) }
- def contains_keywords?; end
-
- # def contains_splat?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#673
- sig { returns(T::Boolean) }
- def contains_splat?; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?arguments: Array[Prism::node]) -> ArgumentsNode
- #
- # source://prism//lib/prism/node.rb#650
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- arguments: T::Array[Prism::Node]
- ).returns(Prism::ArgumentsNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), arguments: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#635
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, arguments: Array[Prism::node] }
- #
- # source://prism//lib/prism/node.rb#658
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#681
- sig { override.returns(String) }
- def inspect; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#686
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#691
- def type; end
- end
-end
-
-# Flags for arguments nodes.
-#
-# source://prism//lib/prism/node.rb#16647
-module Prism::ArgumentsNodeFlags; end
-
-# if arguments contain keywords
-#
-# source://prism//lib/prism/node.rb#16649
-Prism::ArgumentsNodeFlags::CONTAINS_KEYWORDS = T.let(T.unsafe(nil), Integer)
-
-# if arguments contain keyword splat
-#
-# source://prism//lib/prism/node.rb#16652
-Prism::ArgumentsNodeFlags::CONTAINS_KEYWORD_SPLAT = T.let(T.unsafe(nil), Integer)
-
-# if arguments contain splat
-#
-# source://prism//lib/prism/node.rb#16655
-Prism::ArgumentsNodeFlags::CONTAINS_SPLAT = T.let(T.unsafe(nil), Integer)
-
-# Represents an array literal. This can be a regular array using brackets or a special array using % like %w or %i.
-#
-# [1, 2, 3]
-# ^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#709
-class Prism::ArrayNode < ::Prism::Node
- # Initialize a new ArrayNode node.
- #
- # @return [ArrayNode] a new instance of ArrayNode
- #
- # source://prism//lib/prism/node.rb#711
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- elements: T::Array[Prism::Node],
- opening_loc: T.nilable(Prism::Location),
- closing_loc: T.nilable(Prism::Location)
- ).void
- end
- def initialize(source, node_id, location, flags, elements, opening_loc, closing_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#825
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#722
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#727
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def closing: () -> String?
- #
- # source://prism//lib/prism/node.rb#804
- sig { returns(T.nilable(String)) }
- def closing; end
-
- # Represents the optional source location for the closing token.
- #
- # [1,2,3] # "]"
- # %w[foo bar baz] # "]"
- # %I(apple orange banana) # ")"
- # foo = 1, 2, 3 # nil
- #
- # source://prism//lib/prism/node.rb#786
- sig { returns(T.nilable(Prism::Location)) }
- def closing_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#737
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#732
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def contains_splat?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#755
- sig { returns(T::Boolean) }
- def contains_splat?; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?elements: Array[Prism::node], ?opening_loc: Location?, ?closing_loc: Location?) -> ArrayNode
- #
- # source://prism//lib/prism/node.rb#742
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- elements: T::Array[Prism::Node],
- opening_loc: T.nilable(Prism::Location),
- closing_loc: T.nilable(Prism::Location)
- ).returns(Prism::ArrayNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), elements: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#727
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, elements: Array[Prism::node], opening_loc: Location?, closing_loc: Location? }
- #
- # source://prism//lib/prism/node.rb#750
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- # Represent the list of zero or more [non-void expressions](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#non-void-expression) within the array.
- #
- # source://prism//lib/prism/node.rb#760
- sig { returns(T::Array[Prism::Node]) }
- def elements; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#809
- sig { override.returns(String) }
- def inspect; end
-
- # def opening: () -> String?
- #
- # source://prism//lib/prism/node.rb#799
- sig { returns(T.nilable(String)) }
- def opening; end
-
- # Represents the optional source location for the opening token.
- #
- # [1,2,3] # "["
- # %w[foo bar baz] # "%w["
- # %I(apple orange banana) # "%I("
- # foo = 1, 2, 3 # nil
- #
- # source://prism//lib/prism/node.rb#768
- sig { returns(T.nilable(Prism::Location)) }
- def opening_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#814
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#819
- def type; end
- end
-end
-
-# Flags for array nodes.
-#
-# source://prism//lib/prism/node.rb#16659
-module Prism::ArrayNodeFlags; end
-
-# if array contains splat nodes
-#
-# source://prism//lib/prism/node.rb#16661
-Prism::ArrayNodeFlags::CONTAINS_SPLAT = T.let(T.unsafe(nil), Integer)
-
-# Represents an array pattern in pattern matching.
-#
-# foo in 1, 2
-# ^^^^^^^^^^^
-#
-# foo in [1, 2]
-# ^^^^^^^^^^^^^
-#
-# foo in *1
-# ^^^^^^^^^
-#
-# foo in Bar[]
-# ^^^^^^^^^^^^
-#
-# foo in Bar[1, 2, 3]
-# ^^^^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#851
-class Prism::ArrayPatternNode < ::Prism::Node
- # Initialize a new ArrayPatternNode node.
- #
- # @return [ArrayPatternNode] a new instance of ArrayPatternNode
- #
- # source://prism//lib/prism/node.rb#853
- def initialize(source, node_id, location, flags, constant, requireds, rest, posts, opening_loc, closing_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#969
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#867
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#872
- def child_nodes; end
-
- # def closing: () -> String?
- #
- # source://prism//lib/prism/node.rb#948
- def closing; end
-
- # attr_reader closing_loc: Location?
- #
- # source://prism//lib/prism/node.rb#930
- def closing_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#887
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#877
- def compact_child_nodes; end
-
- # attr_reader constant: Prism::node?
- #
- # source://prism//lib/prism/node.rb#905
- def constant; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?constant: Prism::node?, ?requireds: Array[Prism::node], ?rest: Prism::node?, ?posts: Array[Prism::node], ?opening_loc: Location?, ?closing_loc: Location?) -> ArrayPatternNode
- #
- # source://prism//lib/prism/node.rb#892
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), constant: T.unsafe(nil), requireds: T.unsafe(nil), rest: T.unsafe(nil), posts: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#872
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, constant: Prism::node?, requireds: Array[Prism::node], rest: Prism::node?, posts: Array[Prism::node], opening_loc: Location?, closing_loc: Location? }
- #
- # source://prism//lib/prism/node.rb#900
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#953
- sig { override.returns(String) }
- def inspect; end
-
- # def opening: () -> String?
- #
- # source://prism//lib/prism/node.rb#943
- def opening; end
-
- # attr_reader opening_loc: Location?
- #
- # source://prism//lib/prism/node.rb#917
- def opening_loc; end
-
- # attr_reader posts: Array[Prism::node]
- #
- # source://prism//lib/prism/node.rb#914
- def posts; end
-
- # attr_reader requireds: Array[Prism::node]
- #
- # source://prism//lib/prism/node.rb#908
- def requireds; end
-
- # attr_reader rest: Prism::node?
- #
- # source://prism//lib/prism/node.rb#911
- def rest; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#958
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#963
- def type; end
- end
-end
-
-# Represents a hash key/value pair.
-#
-# { a => b }
-# ^^^^^^
-#
-# source://prism//lib/prism/node.rb#986
-class Prism::AssocNode < ::Prism::Node
- # Initialize a new AssocNode node.
- #
- # @return [AssocNode] a new instance of AssocNode
- #
- # source://prism//lib/prism/node.rb#988
- def initialize(source, node_id, location, flags, key, value, operator_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#1090
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#999
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#1004
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#1014
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#1009
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?key: Prism::node, ?value: Prism::node, ?operator_loc: Location?) -> AssocNode
- #
- # source://prism//lib/prism/node.rb#1019
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), key: T.unsafe(nil), value: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#1004
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, key: Prism::node, value: Prism::node, operator_loc: Location? }
- #
- # source://prism//lib/prism/node.rb#1027
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#1074
- sig { override.returns(String) }
- def inspect; end
-
- # The key of the association. This can be any [non-void expression](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#non-void-expression).
- #
- # { a: b }
- # ^
- #
- # { foo => bar }
- # ^^^
- #
- # { def a; end => 1 }
- # ^^^^^^^^^^
- #
- # source://prism//lib/prism/node.rb#1041
- def key; end
-
- # def operator: () -> String?
- #
- # source://prism//lib/prism/node.rb#1069
- def operator; end
-
- # The location of the `=>` operator, if present.
- #
- # { foo => bar }
- # ^^
- #
- # source://prism//lib/prism/node.rb#1056
- def operator_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#1079
- sig { override.returns(Symbol) }
- def type; end
-
- # The value of the association, if present. This can be any [non-void expression](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#non-void-expression).
- #
- # { foo => bar }
- # ^^^
- #
- # { x: 1 }
- # ^
- #
- # source://prism//lib/prism/node.rb#1050
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#1084
- def type; end
- end
-end
-
-# Represents a splat in a hash literal.
-#
-# { **foo }
-# ^^^^^
-#
-# source://prism//lib/prism/node.rb#1102
-class Prism::AssocSplatNode < ::Prism::Node
- # Initialize a new AssocSplatNode node.
- #
- # @return [AssocSplatNode] a new instance of AssocSplatNode
- #
- # source://prism//lib/prism/node.rb#1104
- def initialize(source, node_id, location, flags, value, operator_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#1186
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#1114
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#1119
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#1131
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#1124
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?value: Prism::node?, ?operator_loc: Location) -> AssocSplatNode
- #
- # source://prism//lib/prism/node.rb#1136
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), value: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#1119
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, value: Prism::node?, operator_loc: Location }
- #
- # source://prism//lib/prism/node.rb#1144
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#1170
- sig { override.returns(String) }
- def inspect; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#1165
- def operator; end
-
- # The location of the `**` operator.
- #
- # { **x }
- # ^^
- #
- # source://prism//lib/prism/node.rb#1158
- def operator_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#1175
- sig { override.returns(Symbol) }
- def type; end
-
- # The value to be splatted, if present. Will be missing when keyword rest argument forwarding is used.
- #
- # { **foo }
- # ^^^
- #
- # source://prism//lib/prism/node.rb#1152
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#1180
- def type; end
- end
-end
-
-# The FFI backend is used on other Ruby implementations.
-#
-# source://prism//lib/prism.rb#81
-Prism::BACKEND = T.let(T.unsafe(nil), Symbol)
-
-# Represents reading a reference to a field in the previous match.
-#
-# $'
-# ^^
-#
-# source://prism//lib/prism/node.rb#1197
-class Prism::BackReferenceReadNode < ::Prism::Node
- # Initialize a new BackReferenceReadNode node.
- #
- # @return [BackReferenceReadNode] a new instance of BackReferenceReadNode
- #
- # source://prism//lib/prism/node.rb#1199
- def initialize(source, node_id, location, flags, name); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#1264
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#1208
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#1213
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#1223
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#1218
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol) -> BackReferenceReadNode
- #
- # source://prism//lib/prism/node.rb#1228
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#1213
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol }
- #
- # source://prism//lib/prism/node.rb#1236
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#1248
- sig { override.returns(String) }
- def inspect; end
-
- # The name of the back-reference variable, including the leading `$`.
- #
- # $& # name `:$&`
- #
- # $+ # name `:$+`
- #
- # source://prism//lib/prism/node.rb#1245
- def name; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#1253
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#1258
- def type; end
- end
-end
-
-# A class that knows how to walk down the tree. None of the individual visit
-# methods are implemented on this visitor, so it forces the consumer to
-# implement each one that they need. For a default implementation that
-# continues walking the tree, see the Visitor class.
-#
-# source://prism//lib/prism/visitor.rb#14
-class Prism::BasicVisitor
- # Calls `accept` on the given node if it is not `nil`, which in turn should
- # call back into this visitor by calling the appropriate `visit_*` method.
- #
- # source://prism//lib/prism/visitor.rb#17
- sig { params(node: T.nilable(Prism::Node)).void }
- def visit(node); end
-
- # Visits each node in `nodes` by calling `accept` on each one.
- #
- # source://prism//lib/prism/visitor.rb#23
- sig { params(nodes: T::Array[T.nilable(Prism::Node)]).void }
- def visit_all(nodes); end
-
- # Visits the child nodes of `node` by calling `accept` on each one.
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::Node).void }
- def visit_child_nodes(node); end
-end
-
-# Represents a begin statement.
-#
-# begin
-# foo
-# end
-# ^^^^^
-#
-# source://prism//lib/prism/node.rb#1276
-class Prism::BeginNode < ::Prism::Node
- # Initialize a new BeginNode node.
- #
- # @return [BeginNode] a new instance of BeginNode
- #
- # source://prism//lib/prism/node.rb#1278
- def initialize(source, node_id, location, flags, begin_keyword_loc, statements, rescue_clause, else_clause, ensure_clause, end_keyword_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#1394
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#1292
- def accept(visitor); end
-
- # def begin_keyword: () -> String?
- #
- # source://prism//lib/prism/node.rb#1368
- def begin_keyword; end
-
- # attr_reader begin_keyword_loc: Location?
- #
- # source://prism//lib/prism/node.rb#1330
- def begin_keyword_loc; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#1297
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#1312
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#1302
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?begin_keyword_loc: Location?, ?statements: StatementsNode?, ?rescue_clause: RescueNode?, ?else_clause: ElseNode?, ?ensure_clause: EnsureNode?, ?end_keyword_loc: Location?) -> BeginNode
- #
- # source://prism//lib/prism/node.rb#1317
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), begin_keyword_loc: T.unsafe(nil), statements: T.unsafe(nil), rescue_clause: T.unsafe(nil), else_clause: T.unsafe(nil), ensure_clause: T.unsafe(nil), end_keyword_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#1297
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, begin_keyword_loc: Location?, statements: StatementsNode?, rescue_clause: RescueNode?, else_clause: ElseNode?, ensure_clause: EnsureNode?, end_keyword_loc: Location? }
- #
- # source://prism//lib/prism/node.rb#1325
- def deconstruct_keys(keys); end
-
- # attr_reader else_clause: ElseNode?
- #
- # source://prism//lib/prism/node.rb#1349
- def else_clause; end
-
- # def end_keyword: () -> String?
- #
- # source://prism//lib/prism/node.rb#1373
- def end_keyword; end
-
- # attr_reader end_keyword_loc: Location?
- #
- # source://prism//lib/prism/node.rb#1355
- def end_keyword_loc; end
-
- # attr_reader ensure_clause: EnsureNode?
- #
- # source://prism//lib/prism/node.rb#1352
- def ensure_clause; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#1378
- sig { override.returns(String) }
- def inspect; end
-
- # source://prism//lib/prism/parse_result/newlines.rb#79
- def newline_flag!(lines); end
-
- # attr_reader rescue_clause: RescueNode?
- #
- # source://prism//lib/prism/node.rb#1346
- def rescue_clause; end
-
- # attr_reader statements: StatementsNode?
- #
- # source://prism//lib/prism/node.rb#1343
- def statements; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#1383
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#1388
- def type; end
- end
-end
-
-# Represents a block argument using `&`.
-#
-# bar(&args)
-# ^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#1409
-class Prism::BlockArgumentNode < ::Prism::Node
- # Initialize a new BlockArgumentNode node.
- #
- # @return [BlockArgumentNode] a new instance of BlockArgumentNode
- #
- # source://prism//lib/prism/node.rb#1411
- def initialize(source, node_id, location, flags, expression, operator_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#1487
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#1421
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#1426
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#1438
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#1431
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?expression: Prism::node?, ?operator_loc: Location) -> BlockArgumentNode
- #
- # source://prism//lib/prism/node.rb#1443
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), expression: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#1426
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, expression: Prism::node?, operator_loc: Location }
- #
- # source://prism//lib/prism/node.rb#1451
- def deconstruct_keys(keys); end
-
- # attr_reader expression: Prism::node?
- #
- # source://prism//lib/prism/node.rb#1456
- def expression; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#1471
- sig { override.returns(String) }
- def inspect; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#1466
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#1459
- def operator_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#1476
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#1481
- def type; end
- end
-end
-
-# Represents a block local variable.
-#
-# a { |; b| }
-# ^
-#
-# source://prism//lib/prism/node.rb#1498
-class Prism::BlockLocalVariableNode < ::Prism::Node
- # Initialize a new BlockLocalVariableNode node.
- #
- # @return [BlockLocalVariableNode] a new instance of BlockLocalVariableNode
- #
- # source://prism//lib/prism/node.rb#1500
- sig { params(source: Prism::Source, node_id: Integer, location: Prism::Location, flags: Integer, name: Symbol).void }
- def initialize(source, node_id, location, flags, name); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#1566
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#1509
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#1514
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#1524
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#1519
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol) -> BlockLocalVariableNode
- #
- # source://prism//lib/prism/node.rb#1529
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol
- ).returns(Prism::BlockLocalVariableNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#1514
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol }
- #
- # source://prism//lib/prism/node.rb#1537
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#1550
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#1547
- sig { returns(Symbol) }
- def name; end
-
- # def repeated_parameter?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#1542
- sig { returns(T::Boolean) }
- def repeated_parameter?; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#1555
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#1560
- def type; end
- end
-end
-
-# Represents a block of ruby code.
-#
-# [1, 2, 3].each { |i| puts x }
-# ^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#1577
-class Prism::BlockNode < ::Prism::Node
- # Initialize a new BlockNode node.
- #
- # @return [BlockNode] a new instance of BlockNode
- #
- # source://prism//lib/prism/node.rb#1579
- def initialize(source, node_id, location, flags, locals, parameters, body, opening_loc, closing_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#1677
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#1592
- def accept(visitor); end
-
- # attr_reader body: StatementsNode | BeginNode | nil
- #
- # source://prism//lib/prism/node.rb#1634
- def body; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#1597
- def child_nodes; end
-
- # def closing: () -> String
- #
- # source://prism//lib/prism/node.rb#1656
- def closing; end
-
- # attr_reader closing_loc: Location
- #
- # source://prism//lib/prism/node.rb#1644
- def closing_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#1610
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#1602
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?locals: Array[Symbol], ?parameters: BlockParametersNode | NumberedParametersNode | ItParametersNode | nil, ?body: StatementsNode | BeginNode | nil, ?opening_loc: Location, ?closing_loc: Location) -> BlockNode
- #
- # source://prism//lib/prism/node.rb#1615
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), locals: T.unsafe(nil), parameters: T.unsafe(nil), body: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#1597
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, locals: Array[Symbol], parameters: BlockParametersNode | NumberedParametersNode | ItParametersNode | nil, body: StatementsNode | BeginNode | nil, opening_loc: Location, closing_loc: Location }
- #
- # source://prism//lib/prism/node.rb#1623
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#1661
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader locals: Array[Symbol]
- #
- # source://prism//lib/prism/node.rb#1628
- def locals; end
-
- # def opening: () -> String
- #
- # source://prism//lib/prism/node.rb#1651
- def opening; end
-
- # attr_reader opening_loc: Location
- #
- # source://prism//lib/prism/node.rb#1637
- def opening_loc; end
-
- # attr_reader parameters: BlockParametersNode | NumberedParametersNode | ItParametersNode | nil
- #
- # source://prism//lib/prism/node.rb#1631
- def parameters; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#1666
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#1671
- def type; end
- end
-end
-
-# Represents a block parameter of a method, block, or lambda definition.
-#
-# def a(&b)
-# ^^
-# end
-#
-# source://prism//lib/prism/node.rb#1693
-class Prism::BlockParameterNode < ::Prism::Node
- # Initialize a new BlockParameterNode node.
- #
- # @return [BlockParameterNode] a new instance of BlockParameterNode
- #
- # source://prism//lib/prism/node.rb#1695
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: T.nilable(Symbol),
- name_loc: T.nilable(Prism::Location),
- operator_loc: Prism::Location
- ).void
- end
- def initialize(source, node_id, location, flags, name, name_loc, operator_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#1788
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#1706
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#1711
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#1721
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#1716
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol?, ?name_loc: Location?, ?operator_loc: Location) -> BlockParameterNode
- #
- # source://prism//lib/prism/node.rb#1726
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: T.nilable(Symbol),
- name_loc: T.nilable(Prism::Location),
- operator_loc: Prism::Location
- ).returns(Prism::BlockParameterNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#1711
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol?, name_loc: Location?, operator_loc: Location }
- #
- # source://prism//lib/prism/node.rb#1734
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#1772
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader name: Symbol?
- #
- # source://prism//lib/prism/node.rb#1744
- sig { returns(T.nilable(Symbol)) }
- def name; end
-
- # attr_reader name_loc: Location?
- #
- # source://prism//lib/prism/node.rb#1747
- sig { returns(T.nilable(Prism::Location)) }
- def name_loc; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#1767
- sig { returns(String) }
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#1760
- sig { returns(Prism::Location) }
- def operator_loc; end
-
- # def repeated_parameter?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#1739
- sig { returns(T::Boolean) }
- def repeated_parameter?; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#1777
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#1782
- def type; end
- end
-end
-
-# Represents a block's parameters declaration.
-#
-# -> (a, b = 1; local) { }
-# ^^^^^^^^^^^^^^^^^
-#
-# foo do |a, b = 1; local|
-# ^^^^^^^^^^^^^^^^^
-# end
-#
-# source://prism//lib/prism/node.rb#1805
-class Prism::BlockParametersNode < ::Prism::Node
- # Initialize a new BlockParametersNode node.
- #
- # @return [BlockParametersNode] a new instance of BlockParametersNode
- #
- # source://prism//lib/prism/node.rb#1807
- def initialize(source, node_id, location, flags, parameters, locals, opening_loc, closing_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#1913
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#1819
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#1824
- def child_nodes; end
-
- # def closing: () -> String?
- #
- # source://prism//lib/prism/node.rb#1892
- def closing; end
-
- # attr_reader closing_loc: Location?
- #
- # source://prism//lib/prism/node.rb#1874
- def closing_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#1837
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#1829
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?parameters: ParametersNode?, ?locals: Array[BlockLocalVariableNode], ?opening_loc: Location?, ?closing_loc: Location?) -> BlockParametersNode
- #
- # source://prism//lib/prism/node.rb#1842
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), parameters: T.unsafe(nil), locals: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#1824
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, parameters: ParametersNode?, locals: Array[BlockLocalVariableNode], opening_loc: Location?, closing_loc: Location? }
- #
- # source://prism//lib/prism/node.rb#1850
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#1897
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader locals: Array[BlockLocalVariableNode]
- #
- # source://prism//lib/prism/node.rb#1858
- def locals; end
-
- # def opening: () -> String?
- #
- # source://prism//lib/prism/node.rb#1887
- def opening; end
-
- # attr_reader opening_loc: Location?
- #
- # source://prism//lib/prism/node.rb#1861
- def opening_loc; end
-
- # attr_reader parameters: ParametersNode?
- #
- # source://prism//lib/prism/node.rb#1855
- def parameters; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#1902
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#1907
- def type; end
- end
-end
-
-# Represents the use of the `break` keyword.
-#
-# break foo
-# ^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#1927
-class Prism::BreakNode < ::Prism::Node
- # Initialize a new BreakNode node.
- #
- # @return [BreakNode] a new instance of BreakNode
- #
- # source://prism//lib/prism/node.rb#1929
- def initialize(source, node_id, location, flags, arguments, keyword_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#2011
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#1939
- def accept(visitor); end
-
- # The arguments to the break statement, if present. These can be any [non-void expressions](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#non-void-expression).
- #
- # break foo
- # ^^^
- #
- # source://prism//lib/prism/node.rb#1977
- def arguments; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#1944
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#1956
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#1949
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?arguments: ArgumentsNode?, ?keyword_loc: Location) -> BreakNode
- #
- # source://prism//lib/prism/node.rb#1961
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), arguments: T.unsafe(nil), keyword_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#1944
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, arguments: ArgumentsNode?, keyword_loc: Location }
- #
- # source://prism//lib/prism/node.rb#1969
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#1995
- sig { override.returns(String) }
- def inspect; end
-
- # def keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#1990
- def keyword; end
-
- # The location of the `break` keyword.
- #
- # break foo
- # ^^^^^
- #
- # source://prism//lib/prism/node.rb#1983
- def keyword_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#2000
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#2005
- def type; end
- end
-end
-
-# Represents the use of the `&&=` operator on a call.
-#
-# foo.bar &&= value
-# ^^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#2022
-class Prism::CallAndWriteNode < ::Prism::Node
- # Initialize a new CallAndWriteNode node.
- #
- # @return [CallAndWriteNode] a new instance of CallAndWriteNode
- #
- # source://prism//lib/prism/node.rb#2024
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- receiver: T.nilable(Prism::Node),
- call_operator_loc: T.nilable(Prism::Location),
- message_loc: T.nilable(Prism::Location),
- read_name: Symbol,
- write_name: Symbol,
- operator_loc: Prism::Location,
- value: Prism::Node
- ).void
- end
- def initialize(source, node_id, location, flags, receiver, call_operator_loc, message_loc, read_name, write_name, operator_loc, value); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#2171
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#2039
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def attribute_write?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#2085
- sig { returns(T::Boolean) }
- def attribute_write?; end
-
- # def call_operator: () -> String?
- #
- # source://prism//lib/prism/node.rb#2140
- sig { returns(T.nilable(String)) }
- def call_operator; end
-
- # attr_reader call_operator_loc: Location?
- #
- # source://prism//lib/prism/node.rb#2098
- sig { returns(T.nilable(Prism::Location)) }
- def call_operator_loc; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#2044
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#2057
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#2049
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?receiver: Prism::node?, ?call_operator_loc: Location?, ?message_loc: Location?, ?read_name: Symbol, ?write_name: Symbol, ?operator_loc: Location, ?value: Prism::node) -> CallAndWriteNode
- #
- # source://prism//lib/prism/node.rb#2062
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- receiver: T.nilable(Prism::Node),
- call_operator_loc: T.nilable(Prism::Location),
- message_loc: T.nilable(Prism::Location),
- read_name: Symbol,
- write_name: Symbol,
- operator_loc: Prism::Location,
- value: Prism::Node
- ).returns(Prism::CallAndWriteNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), receiver: T.unsafe(nil), call_operator_loc: T.unsafe(nil), message_loc: T.unsafe(nil), read_name: T.unsafe(nil), write_name: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#2044
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, receiver: Prism::node?, call_operator_loc: Location?, message_loc: Location?, read_name: Symbol, write_name: Symbol, operator_loc: Location, value: Prism::node }
- #
- # source://prism//lib/prism/node.rb#2070
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def ignore_visibility?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#2090
- sig { returns(T::Boolean) }
- def ignore_visibility?; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#2155
- sig { override.returns(String) }
- def inspect; end
-
- # def message: () -> String?
- #
- # source://prism//lib/prism/node.rb#2145
- sig { returns(T.nilable(String)) }
- def message; end
-
- # attr_reader message_loc: Location?
- #
- # source://prism//lib/prism/node.rb#2111
- sig { returns(T.nilable(Prism::Location)) }
- def message_loc; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#2150
- sig { returns(String) }
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#2130
- sig { returns(Prism::Location) }
- def operator_loc; end
-
- # attr_reader read_name: Symbol
- #
- # source://prism//lib/prism/node.rb#2124
- sig { returns(Symbol) }
- def read_name; end
-
- # attr_reader receiver: Prism::node?
- #
- # source://prism//lib/prism/node.rb#2095
- sig { returns(T.nilable(Prism::Node)) }
- def receiver; end
-
- # def safe_navigation?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#2075
- sig { returns(T::Boolean) }
- def safe_navigation?; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#2160
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#2137
- sig { returns(Prism::Node) }
- def value; end
-
- # def variable_call?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#2080
- sig { returns(T::Boolean) }
- def variable_call?; end
-
- # attr_reader write_name: Symbol
- #
- # source://prism//lib/prism/node.rb#2127
- sig { returns(Symbol) }
- def write_name; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#2165
- def type; end
- end
-end
-
-# Represents a method call, in all of the various forms that can take.
-#
-# foo
-# ^^^
-#
-# foo()
-# ^^^^^
-#
-# +foo
-# ^^^^
-#
-# foo + bar
-# ^^^^^^^^^
-#
-# foo.bar
-# ^^^^^^^
-#
-# foo&.bar
-# ^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#2203
-class Prism::CallNode < ::Prism::Node
- # Initialize a new CallNode node.
- #
- # @return [CallNode] a new instance of CallNode
- #
- # source://prism//lib/prism/node.rb#2205
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- receiver: T.nilable(Prism::Node),
- call_operator_loc: T.nilable(Prism::Location),
- name: Symbol,
- message_loc: T.nilable(Prism::Location),
- opening_loc: T.nilable(Prism::Location),
- arguments: T.nilable(Prism::ArgumentsNode),
- closing_loc: T.nilable(Prism::Location),
- block: T.nilable(Prism::Node)
- ).void
- end
- def initialize(source, node_id, location, flags, receiver, call_operator_loc, name, message_loc, opening_loc, arguments, closing_loc, block); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#2387
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#2221
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # attr_reader arguments: ArgumentsNode?
- #
- # source://prism//lib/prism/node.rb#2332
- sig { returns(T.nilable(Prism::ArgumentsNode)) }
- def arguments; end
-
- # def attribute_write?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#2268
- sig { returns(T::Boolean) }
- def attribute_write?; end
-
- # attr_reader block: Prism::node?
- #
- # source://prism//lib/prism/node.rb#2348
- sig { returns(T.nilable(Prism::Node)) }
- def block; end
-
- # def call_operator: () -> String?
- #
- # source://prism//lib/prism/node.rb#2351
- sig { returns(T.nilable(String)) }
- def call_operator; end
-
- # attr_reader call_operator_loc: Location?
- #
- # source://prism//lib/prism/node.rb#2290
- sig { returns(T.nilable(Prism::Location)) }
- def call_operator_loc; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#2226
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def closing: () -> String?
- #
- # source://prism//lib/prism/node.rb#2366
- sig { returns(T.nilable(String)) }
- def closing; end
-
- # attr_reader closing_loc: Location?
- #
- # source://prism//lib/prism/node.rb#2335
- sig { returns(T.nilable(Prism::Location)) }
- def closing_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#2240
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#2231
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?receiver: Prism::node?, ?call_operator_loc: Location?, ?name: Symbol, ?message_loc: Location?, ?opening_loc: Location?, ?arguments: ArgumentsNode?, ?closing_loc: Location?, ?block: Prism::node?) -> CallNode
- #
- # source://prism//lib/prism/node.rb#2245
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- receiver: T.nilable(Prism::Node),
- call_operator_loc: T.nilable(Prism::Location),
- name: Symbol,
- message_loc: T.nilable(Prism::Location),
- opening_loc: T.nilable(Prism::Location),
- arguments: T.nilable(Prism::ArgumentsNode),
- closing_loc: T.nilable(Prism::Location),
- block: T.nilable(Prism::Node)
- ).returns(Prism::CallNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), receiver: T.unsafe(nil), call_operator_loc: T.unsafe(nil), name: T.unsafe(nil), message_loc: T.unsafe(nil), opening_loc: T.unsafe(nil), arguments: T.unsafe(nil), closing_loc: T.unsafe(nil), block: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#2226
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, receiver: Prism::node?, call_operator_loc: Location?, name: Symbol, message_loc: Location?, opening_loc: Location?, arguments: ArgumentsNode?, closing_loc: Location?, block: Prism::node? }
- #
- # source://prism//lib/prism/node.rb#2253
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # When a call node has the attribute_write flag set, it means that the call
- # is using the attribute write syntax. This is either a method call to []=
- # or a method call to a method that ends with =. Either way, the = sign is
- # present in the source.
- #
- # Prism returns the message_loc _without_ the = sign attached, because there
- # can be any amount of space between the message and the = sign. However,
- # sometimes you want the location of the full message including the inner
- # space and the = sign. This method provides that.
- #
- # source://prism//lib/prism/node_ext.rb#331
- sig { returns(T.nilable(Prism::Location)) }
- def full_message_loc; end
-
- # def ignore_visibility?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#2273
- sig { returns(T::Boolean) }
- def ignore_visibility?; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#2371
- sig { override.returns(String) }
- def inspect; end
-
- # def message: () -> String?
- #
- # source://prism//lib/prism/node.rb#2356
- sig { returns(T.nilable(String)) }
- def message; end
-
- # attr_reader message_loc: Location?
- #
- # source://prism//lib/prism/node.rb#2306
- sig { returns(T.nilable(Prism::Location)) }
- def message_loc; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#2303
- sig { returns(Symbol) }
- def name; end
-
- # def opening: () -> String?
- #
- # source://prism//lib/prism/node.rb#2361
- sig { returns(T.nilable(String)) }
- def opening; end
-
- # attr_reader opening_loc: Location?
- #
- # source://prism//lib/prism/node.rb#2319
- sig { returns(T.nilable(Prism::Location)) }
- def opening_loc; end
-
- # The object that the method is being called on. This can be either `nil` or any [non-void expression](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#non-void-expression).
- #
- # foo.bar
- # ^^^
- #
- # +foo
- # ^^^
- #
- # foo + bar
- # ^^^
- #
- # source://prism//lib/prism/node.rb#2287
- sig { returns(T.nilable(Prism::Node)) }
- def receiver; end
-
- # def safe_navigation?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#2258
- sig { returns(T::Boolean) }
- def safe_navigation?; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#2376
- sig { override.returns(Symbol) }
- def type; end
-
- # def variable_call?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#2263
- sig { returns(T::Boolean) }
- def variable_call?; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#2381
- def type; end
- end
-end
-
-# Flags for call nodes.
-#
-# source://prism//lib/prism/node.rb#16665
-module Prism::CallNodeFlags; end
-
-# a call that is an attribute write, so the value being written should be returned
-#
-# source://prism//lib/prism/node.rb#16673
-Prism::CallNodeFlags::ATTRIBUTE_WRITE = T.let(T.unsafe(nil), Integer)
-
-# a call that ignores method visibility
-#
-# source://prism//lib/prism/node.rb#16676
-Prism::CallNodeFlags::IGNORE_VISIBILITY = T.let(T.unsafe(nil), Integer)
-
-# &. operator
-#
-# source://prism//lib/prism/node.rb#16667
-Prism::CallNodeFlags::SAFE_NAVIGATION = T.let(T.unsafe(nil), Integer)
-
-# a call that could have been a local variable
-#
-# source://prism//lib/prism/node.rb#16670
-Prism::CallNodeFlags::VARIABLE_CALL = T.let(T.unsafe(nil), Integer)
-
-# Represents the use of an assignment operator on a call.
-#
-# foo.bar += baz
-# ^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#2405
-class Prism::CallOperatorWriteNode < ::Prism::Node
- # Initialize a new CallOperatorWriteNode node.
- #
- # @return [CallOperatorWriteNode] a new instance of CallOperatorWriteNode
- #
- # source://prism//lib/prism/node.rb#2407
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- receiver: T.nilable(Prism::Node),
- call_operator_loc: T.nilable(Prism::Location),
- message_loc: T.nilable(Prism::Location),
- read_name: Symbol,
- write_name: Symbol,
- binary_operator: Symbol,
- binary_operator_loc: Prism::Location,
- value: Prism::Node
- ).void
- end
- def initialize(source, node_id, location, flags, receiver, call_operator_loc, message_loc, read_name, write_name, binary_operator, binary_operator_loc, value); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#2553
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#2423
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def attribute_write?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#2469
- sig { returns(T::Boolean) }
- def attribute_write?; end
-
- # attr_reader binary_operator: Symbol
- #
- # source://prism//lib/prism/node.rb#2514
- sig { returns(Symbol) }
- def binary_operator; end
-
- # attr_reader binary_operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#2517
- sig { returns(Prism::Location) }
- def binary_operator_loc; end
-
- # def call_operator: () -> String?
- #
- # source://prism//lib/prism/node.rb#2527
- sig { returns(T.nilable(String)) }
- def call_operator; end
-
- # attr_reader call_operator_loc: Location?
- #
- # source://prism//lib/prism/node.rb#2482
- sig { returns(T.nilable(Prism::Location)) }
- def call_operator_loc; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#2428
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#2441
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#2433
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?receiver: Prism::node?, ?call_operator_loc: Location?, ?message_loc: Location?, ?read_name: Symbol, ?write_name: Symbol, ?binary_operator: Symbol, ?binary_operator_loc: Location, ?value: Prism::node) -> CallOperatorWriteNode
- #
- # source://prism//lib/prism/node.rb#2446
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- receiver: T.nilable(Prism::Node),
- call_operator_loc: T.nilable(Prism::Location),
- message_loc: T.nilable(Prism::Location),
- read_name: Symbol,
- write_name: Symbol,
- binary_operator: Symbol,
- binary_operator_loc: Prism::Location,
- value: Prism::Node
- ).returns(Prism::CallOperatorWriteNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), receiver: T.unsafe(nil), call_operator_loc: T.unsafe(nil), message_loc: T.unsafe(nil), read_name: T.unsafe(nil), write_name: T.unsafe(nil), binary_operator: T.unsafe(nil), binary_operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#2428
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, receiver: Prism::node?, call_operator_loc: Location?, message_loc: Location?, read_name: Symbol, write_name: Symbol, binary_operator: Symbol, binary_operator_loc: Location, value: Prism::node }
- #
- # source://prism//lib/prism/node.rb#2454
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def ignore_visibility?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#2474
- sig { returns(T::Boolean) }
- def ignore_visibility?; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#2537
- sig { override.returns(String) }
- def inspect; end
-
- # def message: () -> String?
- #
- # source://prism//lib/prism/node.rb#2532
- sig { returns(T.nilable(String)) }
- def message; end
-
- # attr_reader message_loc: Location?
- #
- # source://prism//lib/prism/node.rb#2495
- sig { returns(T.nilable(Prism::Location)) }
- def message_loc; end
-
- # Returns the binary operator used to modify the receiver. This method is
- # deprecated in favor of #binary_operator.
- #
- # source://prism//lib/prism/node_ext.rb#339
- def operator; end
-
- # Returns the location of the binary operator used to modify the receiver.
- # This method is deprecated in favor of #binary_operator_loc.
- #
- # source://prism//lib/prism/node_ext.rb#346
- def operator_loc; end
-
- # attr_reader read_name: Symbol
- #
- # source://prism//lib/prism/node.rb#2508
- sig { returns(Symbol) }
- def read_name; end
-
- # attr_reader receiver: Prism::node?
- #
- # source://prism//lib/prism/node.rb#2479
- sig { returns(T.nilable(Prism::Node)) }
- def receiver; end
-
- # def safe_navigation?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#2459
- sig { returns(T::Boolean) }
- def safe_navigation?; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#2542
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#2524
- sig { returns(Prism::Node) }
- def value; end
-
- # def variable_call?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#2464
- sig { returns(T::Boolean) }
- def variable_call?; end
-
- # attr_reader write_name: Symbol
- #
- # source://prism//lib/prism/node.rb#2511
- sig { returns(Symbol) }
- def write_name; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#2547
- def type; end
- end
-end
-
-# Represents the use of the `||=` operator on a call.
-#
-# foo.bar ||= value
-# ^^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#2571
-class Prism::CallOrWriteNode < ::Prism::Node
- # Initialize a new CallOrWriteNode node.
- #
- # @return [CallOrWriteNode] a new instance of CallOrWriteNode
- #
- # source://prism//lib/prism/node.rb#2573
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- receiver: T.nilable(Prism::Node),
- call_operator_loc: T.nilable(Prism::Location),
- message_loc: T.nilable(Prism::Location),
- read_name: Symbol,
- write_name: Symbol,
- operator_loc: Prism::Location,
- value: Prism::Node
- ).void
- end
- def initialize(source, node_id, location, flags, receiver, call_operator_loc, message_loc, read_name, write_name, operator_loc, value); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#2720
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#2588
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def attribute_write?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#2634
- sig { returns(T::Boolean) }
- def attribute_write?; end
-
- # def call_operator: () -> String?
- #
- # source://prism//lib/prism/node.rb#2689
- sig { returns(T.nilable(String)) }
- def call_operator; end
-
- # attr_reader call_operator_loc: Location?
- #
- # source://prism//lib/prism/node.rb#2647
- sig { returns(T.nilable(Prism::Location)) }
- def call_operator_loc; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#2593
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#2606
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#2598
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?receiver: Prism::node?, ?call_operator_loc: Location?, ?message_loc: Location?, ?read_name: Symbol, ?write_name: Symbol, ?operator_loc: Location, ?value: Prism::node) -> CallOrWriteNode
- #
- # source://prism//lib/prism/node.rb#2611
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- receiver: T.nilable(Prism::Node),
- call_operator_loc: T.nilable(Prism::Location),
- message_loc: T.nilable(Prism::Location),
- read_name: Symbol,
- write_name: Symbol,
- operator_loc: Prism::Location,
- value: Prism::Node
- ).returns(Prism::CallOrWriteNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), receiver: T.unsafe(nil), call_operator_loc: T.unsafe(nil), message_loc: T.unsafe(nil), read_name: T.unsafe(nil), write_name: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#2593
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, receiver: Prism::node?, call_operator_loc: Location?, message_loc: Location?, read_name: Symbol, write_name: Symbol, operator_loc: Location, value: Prism::node }
- #
- # source://prism//lib/prism/node.rb#2619
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def ignore_visibility?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#2639
- sig { returns(T::Boolean) }
- def ignore_visibility?; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#2704
- sig { override.returns(String) }
- def inspect; end
-
- # def message: () -> String?
- #
- # source://prism//lib/prism/node.rb#2694
- sig { returns(T.nilable(String)) }
- def message; end
-
- # attr_reader message_loc: Location?
- #
- # source://prism//lib/prism/node.rb#2660
- sig { returns(T.nilable(Prism::Location)) }
- def message_loc; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#2699
- sig { returns(String) }
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#2679
- sig { returns(Prism::Location) }
- def operator_loc; end
-
- # attr_reader read_name: Symbol
- #
- # source://prism//lib/prism/node.rb#2673
- sig { returns(Symbol) }
- def read_name; end
-
- # attr_reader receiver: Prism::node?
- #
- # source://prism//lib/prism/node.rb#2644
- sig { returns(T.nilable(Prism::Node)) }
- def receiver; end
-
- # def safe_navigation?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#2624
- sig { returns(T::Boolean) }
- def safe_navigation?; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#2709
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#2686
- sig { returns(Prism::Node) }
- def value; end
-
- # def variable_call?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#2629
- sig { returns(T::Boolean) }
- def variable_call?; end
-
- # attr_reader write_name: Symbol
- #
- # source://prism//lib/prism/node.rb#2676
- sig { returns(Symbol) }
- def write_name; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#2714
- def type; end
- end
-end
-
-# Represents assigning to a method call.
-#
-# foo.bar, = 1
-# ^^^^^^^
-#
-# begin
-# rescue => foo.bar
-# ^^^^^^^
-# end
-#
-# for foo.bar in baz do end
-# ^^^^^^^
-#
-# source://prism//lib/prism/node.rb#2745
-class Prism::CallTargetNode < ::Prism::Node
- # Initialize a new CallTargetNode node.
- #
- # @return [CallTargetNode] a new instance of CallTargetNode
- #
- # source://prism//lib/prism/node.rb#2747
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- receiver: Prism::Node,
- call_operator_loc: Prism::Location,
- name: Symbol,
- message_loc: Prism::Location
- ).void
- end
- def initialize(source, node_id, location, flags, receiver, call_operator_loc, name, message_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#2858
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#2759
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def attribute_write?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#2802
- sig { returns(T::Boolean) }
- def attribute_write?; end
-
- # def call_operator: () -> String
- #
- # source://prism//lib/prism/node.rb#2832
- sig { returns(String) }
- def call_operator; end
-
- # attr_reader call_operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#2815
- sig { returns(Prism::Location) }
- def call_operator_loc; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#2764
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#2774
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#2769
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?receiver: Prism::node, ?call_operator_loc: Location, ?name: Symbol, ?message_loc: Location) -> CallTargetNode
- #
- # source://prism//lib/prism/node.rb#2779
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- receiver: Prism::Node,
- call_operator_loc: Prism::Location,
- name: Symbol,
- message_loc: Prism::Location
- ).returns(Prism::CallTargetNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), receiver: T.unsafe(nil), call_operator_loc: T.unsafe(nil), name: T.unsafe(nil), message_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#2764
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, receiver: Prism::node, call_operator_loc: Location, name: Symbol, message_loc: Location }
- #
- # source://prism//lib/prism/node.rb#2787
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def ignore_visibility?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#2807
- sig { returns(T::Boolean) }
- def ignore_visibility?; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#2842
- sig { override.returns(String) }
- def inspect; end
-
- # def message: () -> String
- #
- # source://prism//lib/prism/node.rb#2837
- sig { returns(String) }
- def message; end
-
- # attr_reader message_loc: Location
- #
- # source://prism//lib/prism/node.rb#2825
- sig { returns(Prism::Location) }
- def message_loc; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#2822
- sig { returns(Symbol) }
- def name; end
-
- # attr_reader receiver: Prism::node
- #
- # source://prism//lib/prism/node.rb#2812
- sig { returns(Prism::Node) }
- def receiver; end
-
- # def safe_navigation?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#2792
- sig { returns(T::Boolean) }
- def safe_navigation?; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#2847
- sig { override.returns(Symbol) }
- def type; end
-
- # def variable_call?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#2797
- sig { returns(T::Boolean) }
- def variable_call?; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#2852
- def type; end
- end
-end
-
-# Represents assigning to a local variable in pattern matching.
-#
-# foo => [bar => baz]
-# ^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#2872
-class Prism::CapturePatternNode < ::Prism::Node
- # Initialize a new CapturePatternNode node.
- #
- # @return [CapturePatternNode] a new instance of CapturePatternNode
- #
- # source://prism//lib/prism/node.rb#2874
- def initialize(source, node_id, location, flags, value, target, operator_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#2952
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#2885
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#2890
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#2900
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#2895
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?value: Prism::node, ?target: Prism::node, ?operator_loc: Location) -> CapturePatternNode
- #
- # source://prism//lib/prism/node.rb#2905
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), value: T.unsafe(nil), target: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#2890
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, value: Prism::node, target: Prism::node, operator_loc: Location }
- #
- # source://prism//lib/prism/node.rb#2913
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#2936
- sig { override.returns(String) }
- def inspect; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#2931
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#2924
- def operator_loc; end
-
- # attr_reader target: Prism::node
- #
- # source://prism//lib/prism/node.rb#2921
- def target; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#2941
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#2918
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#2946
- def type; end
- end
-end
-
-# Represents the use of a case statement for pattern matching.
-#
-# case true
-# in false
-# end
-# ^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#2966
-class Prism::CaseMatchNode < ::Prism::Node
- # Initialize a new CaseMatchNode node.
- #
- # @return [CaseMatchNode] a new instance of CaseMatchNode
- #
- # source://prism//lib/prism/node.rb#2968
- def initialize(source, node_id, location, flags, predicate, conditions, else_clause, case_keyword_loc, end_keyword_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#3067
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#2981
- def accept(visitor); end
-
- # def case_keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#3041
- def case_keyword; end
-
- # attr_reader case_keyword_loc: Location
- #
- # source://prism//lib/prism/node.rb#3027
- def case_keyword_loc; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#2986
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#3000
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#2991
- def compact_child_nodes; end
-
- # attr_reader conditions: Array[Prism::node]
- #
- # source://prism//lib/prism/node.rb#3021
- def conditions; end
-
- # Returns the else clause of the case match node. This method is deprecated
- # in favor of #else_clause.
- #
- # source://prism//lib/prism/node_ext.rb#467
- def consequent; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?predicate: Prism::node?, ?conditions: Array[Prism::node], ?else_clause: ElseNode?, ?case_keyword_loc: Location, ?end_keyword_loc: Location) -> CaseMatchNode
- #
- # source://prism//lib/prism/node.rb#3005
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), predicate: T.unsafe(nil), conditions: T.unsafe(nil), else_clause: T.unsafe(nil), case_keyword_loc: T.unsafe(nil), end_keyword_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#2986
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, predicate: Prism::node?, conditions: Array[Prism::node], else_clause: ElseNode?, case_keyword_loc: Location, end_keyword_loc: Location }
- #
- # source://prism//lib/prism/node.rb#3013
- def deconstruct_keys(keys); end
-
- # attr_reader else_clause: ElseNode?
- #
- # source://prism//lib/prism/node.rb#3024
- def else_clause; end
-
- # def end_keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#3046
- def end_keyword; end
-
- # attr_reader end_keyword_loc: Location
- #
- # source://prism//lib/prism/node.rb#3034
- def end_keyword_loc; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#3051
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader predicate: Prism::node?
- #
- # source://prism//lib/prism/node.rb#3018
- def predicate; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#3056
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#3061
- def type; end
- end
-end
-
-# Represents the use of a case statement.
-#
-# case true
-# when false
-# end
-# ^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#3084
-class Prism::CaseNode < ::Prism::Node
- # Initialize a new CaseNode node.
- #
- # @return [CaseNode] a new instance of CaseNode
- #
- # source://prism//lib/prism/node.rb#3086
- def initialize(source, node_id, location, flags, predicate, conditions, else_clause, case_keyword_loc, end_keyword_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#3185
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#3099
- def accept(visitor); end
-
- # def case_keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#3159
- def case_keyword; end
-
- # attr_reader case_keyword_loc: Location
- #
- # source://prism//lib/prism/node.rb#3145
- def case_keyword_loc; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#3104
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#3118
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#3109
- def compact_child_nodes; end
-
- # attr_reader conditions: Array[Prism::node]
- #
- # source://prism//lib/prism/node.rb#3139
- def conditions; end
-
- # Returns the else clause of the case node. This method is deprecated in
- # favor of #else_clause.
- #
- # source://prism//lib/prism/node_ext.rb#476
- def consequent; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?predicate: Prism::node?, ?conditions: Array[Prism::node], ?else_clause: ElseNode?, ?case_keyword_loc: Location, ?end_keyword_loc: Location) -> CaseNode
- #
- # source://prism//lib/prism/node.rb#3123
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), predicate: T.unsafe(nil), conditions: T.unsafe(nil), else_clause: T.unsafe(nil), case_keyword_loc: T.unsafe(nil), end_keyword_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#3104
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, predicate: Prism::node?, conditions: Array[Prism::node], else_clause: ElseNode?, case_keyword_loc: Location, end_keyword_loc: Location }
- #
- # source://prism//lib/prism/node.rb#3131
- def deconstruct_keys(keys); end
-
- # attr_reader else_clause: ElseNode?
- #
- # source://prism//lib/prism/node.rb#3142
- def else_clause; end
-
- # def end_keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#3164
- def end_keyword; end
-
- # attr_reader end_keyword_loc: Location
- #
- # source://prism//lib/prism/node.rb#3152
- def end_keyword_loc; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#3169
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader predicate: Prism::node?
- #
- # source://prism//lib/prism/node.rb#3136
- def predicate; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#3174
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#3179
- def type; end
- end
-end
-
-# Represents a class declaration involving the `class` keyword.
-#
-# class Foo end
-# ^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#3200
-class Prism::ClassNode < ::Prism::Node
- # Initialize a new ClassNode node.
- #
- # @return [ClassNode] a new instance of ClassNode
- #
- # source://prism//lib/prism/node.rb#3202
- def initialize(source, node_id, location, flags, locals, class_keyword_loc, constant_path, inheritance_operator_loc, superclass, body, end_keyword_loc, name); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#3328
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#3218
- def accept(visitor); end
-
- # attr_reader body: Prism::node?
- #
- # source://prism//lib/prism/node.rb#3284
- def body; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#3223
- def child_nodes; end
-
- # def class_keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#3297
- def class_keyword; end
-
- # attr_reader class_keyword_loc: Location
- #
- # source://prism//lib/prism/node.rb#3258
- def class_keyword_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#3237
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#3228
- def compact_child_nodes; end
-
- # attr_reader constant_path: Prism::node
- #
- # source://prism//lib/prism/node.rb#3265
- def constant_path; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?locals: Array[Symbol], ?class_keyword_loc: Location, ?constant_path: Prism::node, ?inheritance_operator_loc: Location?, ?superclass: Prism::node?, ?body: Prism::node?, ?end_keyword_loc: Location, ?name: Symbol) -> ClassNode
- #
- # source://prism//lib/prism/node.rb#3242
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), locals: T.unsafe(nil), class_keyword_loc: T.unsafe(nil), constant_path: T.unsafe(nil), inheritance_operator_loc: T.unsafe(nil), superclass: T.unsafe(nil), body: T.unsafe(nil), end_keyword_loc: T.unsafe(nil), name: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#3223
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, locals: Array[Symbol], class_keyword_loc: Location, constant_path: Prism::node, inheritance_operator_loc: Location?, superclass: Prism::node?, body: Prism::node?, end_keyword_loc: Location, name: Symbol }
- #
- # source://prism//lib/prism/node.rb#3250
- def deconstruct_keys(keys); end
-
- # def end_keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#3307
- def end_keyword; end
-
- # attr_reader end_keyword_loc: Location
- #
- # source://prism//lib/prism/node.rb#3287
- def end_keyword_loc; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inheritance_operator: () -> String?
- #
- # source://prism//lib/prism/node.rb#3302
- def inheritance_operator; end
-
- # attr_reader inheritance_operator_loc: Location?
- #
- # source://prism//lib/prism/node.rb#3268
- def inheritance_operator_loc; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#3312
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader locals: Array[Symbol]
- #
- # source://prism//lib/prism/node.rb#3255
- def locals; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#3294
- def name; end
-
- # attr_reader superclass: Prism::node?
- #
- # source://prism//lib/prism/node.rb#3281
- def superclass; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#3317
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#3322
- def type; end
- end
-end
-
-# Represents the use of the `&&=` operator for assignment to a class variable.
-#
-# @@target &&= value
-# ^^^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#3346
-class Prism::ClassVariableAndWriteNode < ::Prism::Node
- # Initialize a new ClassVariableAndWriteNode node.
- #
- # @return [ClassVariableAndWriteNode] a new instance of ClassVariableAndWriteNode
- #
- # source://prism//lib/prism/node.rb#3348
- def initialize(source, node_id, location, flags, name, name_loc, operator_loc, value); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#3434
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#3360
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#3365
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#3375
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#3370
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol, ?name_loc: Location, ?operator_loc: Location, ?value: Prism::node) -> ClassVariableAndWriteNode
- #
- # source://prism//lib/prism/node.rb#3380
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#3365
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol, name_loc: Location, operator_loc: Location, value: Prism::node }
- #
- # source://prism//lib/prism/node.rb#3388
- def deconstruct_keys(keys); end
-
- # source://prism//lib/prism/desugar_compiler.rb#164
- def desugar; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#3418
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#3393
- def name; end
-
- # attr_reader name_loc: Location
- #
- # source://prism//lib/prism/node.rb#3396
- def name_loc; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#3413
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#3403
- def operator_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#3423
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#3410
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#3428
- def type; end
- end
-end
-
-# Represents assigning to a class variable using an operator that isn't `=`.
-#
-# @@target += value
-# ^^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#3447
-class Prism::ClassVariableOperatorWriteNode < ::Prism::Node
- # Initialize a new ClassVariableOperatorWriteNode node.
- #
- # @return [ClassVariableOperatorWriteNode] a new instance of ClassVariableOperatorWriteNode
- #
- # source://prism//lib/prism/node.rb#3449
- def initialize(source, node_id, location, flags, name, name_loc, binary_operator_loc, value, binary_operator); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#3534
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#3462
- def accept(visitor); end
-
- # attr_reader binary_operator: Symbol
- #
- # source://prism//lib/prism/node.rb#3515
- def binary_operator; end
-
- # attr_reader binary_operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#3505
- def binary_operator_loc; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#3467
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#3477
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#3472
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol, ?name_loc: Location, ?binary_operator_loc: Location, ?value: Prism::node, ?binary_operator: Symbol) -> ClassVariableOperatorWriteNode
- #
- # source://prism//lib/prism/node.rb#3482
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), binary_operator_loc: T.unsafe(nil), value: T.unsafe(nil), binary_operator: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#3467
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol, name_loc: Location, binary_operator_loc: Location, value: Prism::node, binary_operator: Symbol }
- #
- # source://prism//lib/prism/node.rb#3490
- def deconstruct_keys(keys); end
-
- # source://prism//lib/prism/desugar_compiler.rb#176
- def desugar; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#3518
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#3495
- def name; end
-
- # attr_reader name_loc: Location
- #
- # source://prism//lib/prism/node.rb#3498
- def name_loc; end
-
- # Returns the binary operator used to modify the receiver. This method is
- # deprecated in favor of #binary_operator.
- #
- # source://prism//lib/prism/node_ext.rb#355
- def operator; end
-
- # Returns the location of the binary operator used to modify the receiver.
- # This method is deprecated in favor of #binary_operator_loc.
- #
- # source://prism//lib/prism/node_ext.rb#362
- def operator_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#3523
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#3512
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#3528
- def type; end
- end
-end
-
-# Represents the use of the `||=` operator for assignment to a class variable.
-#
-# @@target ||= value
-# ^^^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#3548
-class Prism::ClassVariableOrWriteNode < ::Prism::Node
- # Initialize a new ClassVariableOrWriteNode node.
- #
- # @return [ClassVariableOrWriteNode] a new instance of ClassVariableOrWriteNode
- #
- # source://prism//lib/prism/node.rb#3550
- def initialize(source, node_id, location, flags, name, name_loc, operator_loc, value); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#3636
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#3562
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#3567
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#3577
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#3572
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol, ?name_loc: Location, ?operator_loc: Location, ?value: Prism::node) -> ClassVariableOrWriteNode
- #
- # source://prism//lib/prism/node.rb#3582
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#3567
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol, name_loc: Location, operator_loc: Location, value: Prism::node }
- #
- # source://prism//lib/prism/node.rb#3590
- def deconstruct_keys(keys); end
-
- # source://prism//lib/prism/desugar_compiler.rb#170
- def desugar; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#3620
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#3595
- def name; end
-
- # attr_reader name_loc: Location
- #
- # source://prism//lib/prism/node.rb#3598
- def name_loc; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#3615
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#3605
- def operator_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#3625
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#3612
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#3630
- def type; end
- end
-end
-
-# Represents referencing a class variable.
-#
-# @@foo
-# ^^^^^
-#
-# source://prism//lib/prism/node.rb#3649
-class Prism::ClassVariableReadNode < ::Prism::Node
- # Initialize a new ClassVariableReadNode node.
- #
- # @return [ClassVariableReadNode] a new instance of ClassVariableReadNode
- #
- # source://prism//lib/prism/node.rb#3651
- def initialize(source, node_id, location, flags, name); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#3716
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#3660
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#3665
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#3675
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#3670
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol) -> ClassVariableReadNode
- #
- # source://prism//lib/prism/node.rb#3680
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#3665
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol }
- #
- # source://prism//lib/prism/node.rb#3688
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#3700
- sig { override.returns(String) }
- def inspect; end
-
- # The name of the class variable, which is a `@@` followed by an [identifier](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#identifiers).
- #
- # @@abc # name `:@@abc`
- #
- # @@_test # name `:@@_test`
- #
- # source://prism//lib/prism/node.rb#3697
- def name; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#3705
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#3710
- def type; end
- end
-end
-
-# Represents writing to a class variable in a context that doesn't have an explicit value.
-#
-# @@foo, @@bar = baz
-# ^^^^^ ^^^^^
-#
-# source://prism//lib/prism/node.rb#3726
-class Prism::ClassVariableTargetNode < ::Prism::Node
- # Initialize a new ClassVariableTargetNode node.
- #
- # @return [ClassVariableTargetNode] a new instance of ClassVariableTargetNode
- #
- # source://prism//lib/prism/node.rb#3728
- def initialize(source, node_id, location, flags, name); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#3789
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#3737
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#3742
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#3752
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#3747
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol) -> ClassVariableTargetNode
- #
- # source://prism//lib/prism/node.rb#3757
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#3742
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol }
- #
- # source://prism//lib/prism/node.rb#3765
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#3773
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#3770
- def name; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#3778
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#3783
- def type; end
- end
-end
-
-# Represents writing to a class variable.
-#
-# @@foo = 1
-# ^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#3799
-class Prism::ClassVariableWriteNode < ::Prism::Node
- # Initialize a new ClassVariableWriteNode node.
- #
- # @return [ClassVariableWriteNode] a new instance of ClassVariableWriteNode
- #
- # source://prism//lib/prism/node.rb#3801
- def initialize(source, node_id, location, flags, name, name_loc, value, operator_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#3903
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#3813
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#3818
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#3828
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#3823
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol, ?name_loc: Location, ?value: Prism::node, ?operator_loc: Location) -> ClassVariableWriteNode
- #
- # source://prism//lib/prism/node.rb#3833
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), value: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#3818
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol, name_loc: Location, value: Prism::node, operator_loc: Location }
- #
- # source://prism//lib/prism/node.rb#3841
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#3887
- sig { override.returns(String) }
- def inspect; end
-
- # The name of the class variable, which is a `@@` followed by an [identifier](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#identifiers).
- #
- # @@abc = 123 # name `@@abc`
- #
- # @@_test = :test # name `@@_test`
- #
- # source://prism//lib/prism/node.rb#3850
- def name; end
-
- # The location of the variable name.
- #
- # @@foo = :bar
- # ^^^^^
- #
- # source://prism//lib/prism/node.rb#3856
- def name_loc; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#3882
- def operator; end
-
- # The location of the `=` operator.
- #
- # @@foo = :bar
- # ^
- #
- # source://prism//lib/prism/node.rb#3875
- def operator_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#3892
- sig { override.returns(Symbol) }
- def type; end
-
- # The value to write to the class variable. This can be any [non-void expression](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#non-void-expression).
- #
- # @@foo = :bar
- # ^^^^
- #
- # @@_xyz = 123
- # ^^^
- #
- # source://prism//lib/prism/node.rb#3869
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#3897
- def type; end
- end
-end
-
-# This represents a comment that was encountered during parsing. It is the
-# base class for all comment types.
-#
-# source://prism//lib/prism/parse_result.rb#375
-class Prism::Comment
- abstract!
-
- # Create a new comment object with the given location.
- #
- # @return [Comment] a new instance of Comment
- #
- # source://prism//lib/prism/parse_result.rb#380
- sig { params(location: Prism::Location).void }
- def initialize(location); end
-
- # Implement the hash pattern matching interface for Comment.
- #
- # source://prism//lib/prism/parse_result.rb#385
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- # The location of this comment in the source.
- #
- # source://prism//lib/prism/parse_result.rb#377
- sig { returns(Prism::Location) }
- def location; end
-
- # Returns the content of the comment by slicing it from the source code.
- #
- # source://prism//lib/prism/parse_result.rb#390
- sig { returns(String) }
- def slice; end
-
- sig { abstract.returns(T::Boolean) }
- def trailing?; end
-end
-
-# A compiler is a visitor that returns the value of each node as it visits.
-# This is as opposed to a visitor which will only walk the tree. This can be
-# useful when you are trying to compile a tree into a different format.
-#
-# For example, to build a representation of the tree as s-expressions, you
-# could write:
-#
-# 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]]]]]]]]
-#
-# source://prism//lib/prism/compiler.rb#27
-class Prism::Compiler < ::Prism::Visitor
- # Visit an individual node.
- #
- # source://prism//lib/prism/compiler.rb#29
- sig { params(node: T.nilable(Prism::Node)).returns(T.untyped) }
- def visit(node); end
-
- # Visit the child nodes of the given node.
- # Compile a AliasGlobalVariableNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_alias_global_variable_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a AliasMethodNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_alias_method_node(node); end
-
- # Visit a list of nodes.
- #
- # source://prism//lib/prism/compiler.rb#34
- sig { params(nodes: T::Array[T.nilable(Prism::Node)]).returns(T::Array[T.untyped]) }
- def visit_all(nodes); end
-
- # Visit the child nodes of the given node.
- # Compile a AlternationPatternNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_alternation_pattern_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a AndNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_and_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ArgumentsNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_arguments_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ArrayNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_array_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ArrayPatternNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_array_pattern_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a AssocNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_assoc_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a AssocSplatNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_assoc_splat_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a BackReferenceReadNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_back_reference_read_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a BeginNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_begin_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a BlockArgumentNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_block_argument_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a BlockLocalVariableNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_block_local_variable_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a BlockNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_block_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a BlockParameterNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_block_parameter_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a BlockParametersNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_block_parameters_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a BreakNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_break_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a CallAndWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_call_and_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a CallNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_call_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a CallOperatorWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_call_operator_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a CallOrWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_call_or_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a CallTargetNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_call_target_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a CapturePatternNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_capture_pattern_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a CaseMatchNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_case_match_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a CaseNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_case_node(node); end
-
- # Visit the child nodes of the given node.
- #
- # source://prism//lib/prism/compiler.rb#39
- sig { params(node: Prism::Node).returns(T::Array[T.untyped]) }
- def visit_child_nodes(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ClassNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_class_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ClassVariableAndWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_class_variable_and_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ClassVariableOperatorWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_class_variable_operator_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ClassVariableOrWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_class_variable_or_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ClassVariableReadNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_class_variable_read_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ClassVariableTargetNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_class_variable_target_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ClassVariableWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_class_variable_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ConstantAndWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_constant_and_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ConstantOperatorWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_constant_operator_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ConstantOrWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_constant_or_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ConstantPathAndWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_constant_path_and_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ConstantPathNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_constant_path_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ConstantPathOperatorWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_constant_path_operator_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ConstantPathOrWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_constant_path_or_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ConstantPathTargetNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_constant_path_target_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ConstantPathWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_constant_path_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ConstantReadNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_constant_read_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ConstantTargetNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_constant_target_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ConstantWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_constant_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a DefNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_def_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a DefinedNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_defined_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ElseNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_else_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a EmbeddedStatementsNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_embedded_statements_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a EmbeddedVariableNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_embedded_variable_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a EnsureNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_ensure_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a FalseNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_false_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a FindPatternNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_find_pattern_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a FlipFlopNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_flip_flop_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a FloatNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_float_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ForNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_for_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ForwardingArgumentsNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_forwarding_arguments_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ForwardingParameterNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_forwarding_parameter_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ForwardingSuperNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_forwarding_super_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a GlobalVariableAndWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_global_variable_and_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a GlobalVariableOperatorWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_global_variable_operator_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a GlobalVariableOrWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_global_variable_or_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a GlobalVariableReadNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_global_variable_read_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a GlobalVariableTargetNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_global_variable_target_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a GlobalVariableWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_global_variable_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a HashNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_hash_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a HashPatternNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_hash_pattern_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a IfNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_if_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ImaginaryNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_imaginary_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ImplicitNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_implicit_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ImplicitRestNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_implicit_rest_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a InNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_in_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a IndexAndWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_index_and_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a IndexOperatorWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_index_operator_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a IndexOrWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_index_or_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a IndexTargetNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_index_target_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a InstanceVariableAndWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_instance_variable_and_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a InstanceVariableOperatorWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_instance_variable_operator_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a InstanceVariableOrWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_instance_variable_or_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a InstanceVariableReadNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_instance_variable_read_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a InstanceVariableTargetNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_instance_variable_target_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a InstanceVariableWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_instance_variable_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a IntegerNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_integer_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a InterpolatedMatchLastLineNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_interpolated_match_last_line_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a InterpolatedRegularExpressionNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_interpolated_regular_expression_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a InterpolatedStringNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_interpolated_string_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a InterpolatedSymbolNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_interpolated_symbol_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a InterpolatedXStringNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_interpolated_x_string_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ItLocalVariableReadNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_it_local_variable_read_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ItParametersNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_it_parameters_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a KeywordHashNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_keyword_hash_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a KeywordRestParameterNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_keyword_rest_parameter_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a LambdaNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_lambda_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a LocalVariableAndWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_local_variable_and_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a LocalVariableOperatorWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_local_variable_operator_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a LocalVariableOrWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_local_variable_or_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a LocalVariableReadNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_local_variable_read_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a LocalVariableTargetNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_local_variable_target_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a LocalVariableWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_local_variable_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a MatchLastLineNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_match_last_line_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a MatchPredicateNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_match_predicate_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a MatchRequiredNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_match_required_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a MatchWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_match_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a MissingNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_missing_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ModuleNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_module_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a MultiTargetNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_multi_target_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a MultiWriteNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_multi_write_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a NextNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_next_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a NilNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_nil_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a NoKeywordsParameterNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_no_keywords_parameter_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a NumberedParametersNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_numbered_parameters_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a NumberedReferenceReadNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_numbered_reference_read_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a OptionalKeywordParameterNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_optional_keyword_parameter_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a OptionalParameterNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_optional_parameter_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a OrNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_or_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ParametersNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_parameters_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ParenthesesNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_parentheses_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a PinnedExpressionNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_pinned_expression_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a PinnedVariableNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_pinned_variable_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a PostExecutionNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_post_execution_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a PreExecutionNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_pre_execution_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ProgramNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_program_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a RangeNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_range_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a RationalNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_rational_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a RedoNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_redo_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a RegularExpressionNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_regular_expression_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a RequiredKeywordParameterNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_required_keyword_parameter_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a RequiredParameterNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_required_parameter_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a RescueModifierNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_rescue_modifier_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a RescueNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_rescue_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a RestParameterNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_rest_parameter_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a RetryNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_retry_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ReturnNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_return_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a SelfNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_self_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a ShareableConstantNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_shareable_constant_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a SingletonClassNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_singleton_class_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a SourceEncodingNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_source_encoding_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a SourceFileNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_source_file_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a SourceLineNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_source_line_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a SplatNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_splat_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a StatementsNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_statements_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a StringNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_string_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a SuperNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_super_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a SymbolNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_symbol_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a TrueNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_true_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a UndefNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_undef_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a UnlessNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_unless_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a UntilNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_until_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a WhenNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_when_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a WhileNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_while_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a XStringNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_x_string_node(node); end
-
- # Visit the child nodes of the given node.
- # Compile a YieldNode node
- #
- # source://prism//lib/prism/compiler.rb#39
- def visit_yield_node(node); end
-end
-
-# Represents the use of the `&&=` operator for assignment to a constant.
-#
-# Target &&= value
-# ^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#3916
-class Prism::ConstantAndWriteNode < ::Prism::Node
- # Initialize a new ConstantAndWriteNode node.
- #
- # @return [ConstantAndWriteNode] a new instance of ConstantAndWriteNode
- #
- # source://prism//lib/prism/node.rb#3918
- def initialize(source, node_id, location, flags, name, name_loc, operator_loc, value); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#4004
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#3930
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#3935
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#3945
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#3940
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol, ?name_loc: Location, ?operator_loc: Location, ?value: Prism::node) -> ConstantAndWriteNode
- #
- # source://prism//lib/prism/node.rb#3950
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#3935
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol, name_loc: Location, operator_loc: Location, value: Prism::node }
- #
- # source://prism//lib/prism/node.rb#3958
- def deconstruct_keys(keys); end
-
- # source://prism//lib/prism/desugar_compiler.rb#182
- def desugar; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#3988
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#3963
- def name; end
-
- # attr_reader name_loc: Location
- #
- # source://prism//lib/prism/node.rb#3966
- def name_loc; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#3983
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#3973
- def operator_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#3993
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#3980
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#3998
- def type; end
- end
-end
-
-# Represents assigning to a constant using an operator that isn't `=`.
-#
-# Target += value
-# ^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#4017
-class Prism::ConstantOperatorWriteNode < ::Prism::Node
- # Initialize a new ConstantOperatorWriteNode node.
- #
- # @return [ConstantOperatorWriteNode] a new instance of ConstantOperatorWriteNode
- #
- # source://prism//lib/prism/node.rb#4019
- def initialize(source, node_id, location, flags, name, name_loc, binary_operator_loc, value, binary_operator); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#4104
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#4032
- def accept(visitor); end
-
- # attr_reader binary_operator: Symbol
- #
- # source://prism//lib/prism/node.rb#4085
- def binary_operator; end
-
- # attr_reader binary_operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#4075
- def binary_operator_loc; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#4037
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#4047
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#4042
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol, ?name_loc: Location, ?binary_operator_loc: Location, ?value: Prism::node, ?binary_operator: Symbol) -> ConstantOperatorWriteNode
- #
- # source://prism//lib/prism/node.rb#4052
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), binary_operator_loc: T.unsafe(nil), value: T.unsafe(nil), binary_operator: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#4037
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol, name_loc: Location, binary_operator_loc: Location, value: Prism::node, binary_operator: Symbol }
- #
- # source://prism//lib/prism/node.rb#4060
- def deconstruct_keys(keys); end
-
- # source://prism//lib/prism/desugar_compiler.rb#194
- def desugar; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#4088
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#4065
- def name; end
-
- # attr_reader name_loc: Location
- #
- # source://prism//lib/prism/node.rb#4068
- def name_loc; end
-
- # Returns the binary operator used to modify the receiver. This method is
- # deprecated in favor of #binary_operator.
- #
- # source://prism//lib/prism/node_ext.rb#371
- def operator; end
-
- # Returns the location of the binary operator used to modify the receiver.
- # This method is deprecated in favor of #binary_operator_loc.
- #
- # source://prism//lib/prism/node_ext.rb#378
- def operator_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#4093
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#4082
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#4098
- def type; end
- end
-end
-
-# Represents the use of the `||=` operator for assignment to a constant.
-#
-# Target ||= value
-# ^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#4118
-class Prism::ConstantOrWriteNode < ::Prism::Node
- # Initialize a new ConstantOrWriteNode node.
- #
- # @return [ConstantOrWriteNode] a new instance of ConstantOrWriteNode
- #
- # source://prism//lib/prism/node.rb#4120
- def initialize(source, node_id, location, flags, name, name_loc, operator_loc, value); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#4206
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#4132
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#4137
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#4147
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#4142
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol, ?name_loc: Location, ?operator_loc: Location, ?value: Prism::node) -> ConstantOrWriteNode
- #
- # source://prism//lib/prism/node.rb#4152
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#4137
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol, name_loc: Location, operator_loc: Location, value: Prism::node }
- #
- # source://prism//lib/prism/node.rb#4160
- def deconstruct_keys(keys); end
-
- # source://prism//lib/prism/desugar_compiler.rb#188
- def desugar; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#4190
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#4165
- def name; end
-
- # attr_reader name_loc: Location
- #
- # source://prism//lib/prism/node.rb#4168
- def name_loc; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#4185
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#4175
- def operator_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#4195
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#4182
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#4200
- def type; end
- end
-end
-
-# Represents the use of the `&&=` operator for assignment to a constant path.
-#
-# Parent::Child &&= value
-# ^^^^^^^^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#4219
-class Prism::ConstantPathAndWriteNode < ::Prism::Node
- # Initialize a new ConstantPathAndWriteNode node.
- #
- # @return [ConstantPathAndWriteNode] a new instance of ConstantPathAndWriteNode
- #
- # source://prism//lib/prism/node.rb#4221
- def initialize(source, node_id, location, flags, target, operator_loc, value); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#4299
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#4232
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#4237
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#4247
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#4242
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?target: ConstantPathNode, ?operator_loc: Location, ?value: Prism::node) -> ConstantPathAndWriteNode
- #
- # source://prism//lib/prism/node.rb#4252
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), target: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#4237
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, target: ConstantPathNode, operator_loc: Location, value: Prism::node }
- #
- # source://prism//lib/prism/node.rb#4260
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#4283
- sig { override.returns(String) }
- def inspect; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#4278
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#4268
- def operator_loc; end
-
- # attr_reader target: ConstantPathNode
- #
- # source://prism//lib/prism/node.rb#4265
- def target; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#4288
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#4275
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#4293
- def type; end
- end
-end
-
-# Represents accessing a constant through a path of `::` operators.
-#
-# Foo::Bar
-# ^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#4311
-class Prism::ConstantPathNode < ::Prism::Node
- # Initialize a new ConstantPathNode node.
- #
- # @return [ConstantPathNode] a new instance of ConstantPathNode
- #
- # source://prism//lib/prism/node.rb#4313
- def initialize(source, node_id, location, flags, parent, name, delimiter_loc, name_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#4422
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#4325
- def accept(visitor); end
-
- # Previously, we had a child node on this class that contained either a
- # constant read or a missing node. To not cause a breaking change, we
- # continue to supply that API.
- #
- # source://prism//lib/prism/node_ext.rb#202
- def child; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#4330
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#4342
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#4335
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?parent: Prism::node?, ?name: Symbol?, ?delimiter_loc: Location, ?name_loc: Location) -> ConstantPathNode
- #
- # source://prism//lib/prism/node.rb#4347
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), parent: T.unsafe(nil), name: T.unsafe(nil), delimiter_loc: T.unsafe(nil), name_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#4330
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, parent: Prism::node?, name: Symbol?, delimiter_loc: Location, name_loc: Location }
- #
- # source://prism//lib/prism/node.rb#4355
- def deconstruct_keys(keys); end
-
- # def delimiter: () -> String
- #
- # source://prism//lib/prism/node.rb#4401
- def delimiter; end
-
- # The location of the `::` delimiter.
- #
- # ::Foo
- # ^^
- #
- # One::Two
- # ^^
- #
- # source://prism//lib/prism/node.rb#4381
- def delimiter_loc; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # Returns the full name of this constant path. For example: "Foo::Bar"
- #
- # source://prism//lib/prism/node_ext.rb#195
- sig { returns(String) }
- def full_name; end
-
- # Returns the list of parts for the full name of this constant path.
- # For example: [:Foo, :Bar]
- #
- # source://prism//lib/prism/node_ext.rb#173
- sig { returns(T::Array[Symbol]) }
- def full_name_parts; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#4406
- sig { override.returns(String) }
- def inspect; end
-
- # The name of the constant being accessed. This could be `nil` in the event of a syntax error.
- #
- # source://prism//lib/prism/node.rb#4372
- def name; end
-
- # The location of the name of the constant.
- #
- # ::Foo
- # ^^^
- #
- # One::Two
- # ^^^
- #
- # source://prism//lib/prism/node.rb#4394
- def name_loc; end
-
- # The left-hand node of the path, if present. It can be `nil` or any [non-void expression](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#non-void-expression). It will be `nil` when the constant lookup is at the root of the module tree.
- #
- # Foo::Bar
- # ^^^
- #
- # self::Test
- # ^^^^
- #
- # a.b::C
- # ^^^
- #
- # source://prism//lib/prism/node.rb#4369
- def parent; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#4411
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#4416
- def type; end
- end
-end
-
-# An error class raised when dynamic parts are found while computing a
-# constant path's full name. For example:
-# Foo::Bar::Baz -> does not raise because all parts of the constant path are
-# simple constants
-# var::Bar::Baz -> raises because the first part of the constant path is a
-# local variable
-#
-# source://prism//lib/prism/node_ext.rb#164
-class Prism::ConstantPathNode::DynamicPartsInConstantPathError < ::StandardError; end
-
-# An error class raised when missing nodes are found while computing a
-# constant path's full name. For example:
-# Foo:: -> raises because the constant path is missing the last part
-#
-# source://prism//lib/prism/node_ext.rb#169
-class Prism::ConstantPathNode::MissingNodesInConstantPathError < ::StandardError; end
-
-# Represents assigning to a constant path using an operator that isn't `=`.
-#
-# Parent::Child += value
-# ^^^^^^^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#4435
-class Prism::ConstantPathOperatorWriteNode < ::Prism::Node
- # Initialize a new ConstantPathOperatorWriteNode node.
- #
- # @return [ConstantPathOperatorWriteNode] a new instance of ConstantPathOperatorWriteNode
- #
- # source://prism//lib/prism/node.rb#4437
- def initialize(source, node_id, location, flags, target, binary_operator_loc, value, binary_operator); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#4514
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#4449
- def accept(visitor); end
-
- # attr_reader binary_operator: Symbol
- #
- # source://prism//lib/prism/node.rb#4495
- def binary_operator; end
-
- # attr_reader binary_operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#4485
- def binary_operator_loc; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#4454
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#4464
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#4459
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?target: ConstantPathNode, ?binary_operator_loc: Location, ?value: Prism::node, ?binary_operator: Symbol) -> ConstantPathOperatorWriteNode
- #
- # source://prism//lib/prism/node.rb#4469
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), target: T.unsafe(nil), binary_operator_loc: T.unsafe(nil), value: T.unsafe(nil), binary_operator: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#4454
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, target: ConstantPathNode, binary_operator_loc: Location, value: Prism::node, binary_operator: Symbol }
- #
- # source://prism//lib/prism/node.rb#4477
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#4498
- sig { override.returns(String) }
- def inspect; end
-
- # Returns the binary operator used to modify the receiver. This method is
- # deprecated in favor of #binary_operator.
- #
- # source://prism//lib/prism/node_ext.rb#387
- def operator; end
-
- # Returns the location of the binary operator used to modify the receiver.
- # This method is deprecated in favor of #binary_operator_loc.
- #
- # source://prism//lib/prism/node_ext.rb#394
- def operator_loc; end
-
- # attr_reader target: ConstantPathNode
- #
- # source://prism//lib/prism/node.rb#4482
- def target; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#4503
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#4492
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#4508
- def type; end
- end
-end
-
-# Represents the use of the `||=` operator for assignment to a constant path.
-#
-# Parent::Child ||= value
-# ^^^^^^^^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#4527
-class Prism::ConstantPathOrWriteNode < ::Prism::Node
- # Initialize a new ConstantPathOrWriteNode node.
- #
- # @return [ConstantPathOrWriteNode] a new instance of ConstantPathOrWriteNode
- #
- # source://prism//lib/prism/node.rb#4529
- def initialize(source, node_id, location, flags, target, operator_loc, value); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#4607
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#4540
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#4545
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#4555
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#4550
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?target: ConstantPathNode, ?operator_loc: Location, ?value: Prism::node) -> ConstantPathOrWriteNode
- #
- # source://prism//lib/prism/node.rb#4560
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), target: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#4545
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, target: ConstantPathNode, operator_loc: Location, value: Prism::node }
- #
- # source://prism//lib/prism/node.rb#4568
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#4591
- sig { override.returns(String) }
- def inspect; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#4586
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#4576
- def operator_loc; end
-
- # attr_reader target: ConstantPathNode
- #
- # source://prism//lib/prism/node.rb#4573
- def target; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#4596
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#4583
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#4601
- def type; end
- end
-end
-
-# Represents writing to a constant path in a context that doesn't have an explicit value.
-#
-# Foo::Foo, Bar::Bar = baz
-# ^^^^^^^^ ^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#4619
-class Prism::ConstantPathTargetNode < ::Prism::Node
- # Initialize a new ConstantPathTargetNode node.
- #
- # @return [ConstantPathTargetNode] a new instance of ConstantPathTargetNode
- #
- # source://prism//lib/prism/node.rb#4621
- def initialize(source, node_id, location, flags, parent, name, delimiter_loc, name_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#4709
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#4633
- def accept(visitor); end
-
- # Previously, we had a child node on this class that contained either a
- # constant read or a missing node. To not cause a breaking change, we
- # continue to supply that API.
- #
- # source://prism//lib/prism/node_ext.rb#243
- def child; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#4638
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#4650
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#4643
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?parent: Prism::node?, ?name: Symbol?, ?delimiter_loc: Location, ?name_loc: Location) -> ConstantPathTargetNode
- #
- # source://prism//lib/prism/node.rb#4655
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), parent: T.unsafe(nil), name: T.unsafe(nil), delimiter_loc: T.unsafe(nil), name_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#4638
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, parent: Prism::node?, name: Symbol?, delimiter_loc: Location, name_loc: Location }
- #
- # source://prism//lib/prism/node.rb#4663
- def deconstruct_keys(keys); end
-
- # def delimiter: () -> String
- #
- # source://prism//lib/prism/node.rb#4688
- def delimiter; end
-
- # attr_reader delimiter_loc: Location
- #
- # source://prism//lib/prism/node.rb#4674
- def delimiter_loc; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # Returns the full name of this constant path. For example: "Foo::Bar"
- #
- # source://prism//lib/prism/node_ext.rb#236
- sig { returns(String) }
- def full_name; end
-
- # Returns the list of parts for the full name of this constant path.
- # For example: [:Foo, :Bar]
- #
- # source://prism//lib/prism/node_ext.rb#216
- sig { returns(T::Array[Symbol]) }
- def full_name_parts; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#4693
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader name: Symbol?
- #
- # source://prism//lib/prism/node.rb#4671
- def name; end
-
- # attr_reader name_loc: Location
- #
- # source://prism//lib/prism/node.rb#4681
- def name_loc; end
-
- # attr_reader parent: Prism::node?
- #
- # source://prism//lib/prism/node.rb#4668
- def parent; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#4698
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#4703
- def type; end
- end
-end
-
-# Represents writing to a constant path.
-#
-# ::Foo = 1
-# ^^^^^^^^^
-#
-# Foo::Bar = 1
-# ^^^^^^^^^^^^
-#
-# ::Foo::Bar = 1
-# ^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#4728
-class Prism::ConstantPathWriteNode < ::Prism::Node
- # Initialize a new ConstantPathWriteNode node.
- #
- # @return [ConstantPathWriteNode] a new instance of ConstantPathWriteNode
- #
- # source://prism//lib/prism/node.rb#4730
- def initialize(source, node_id, location, flags, target, operator_loc, value); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#4820
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#4741
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#4746
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#4756
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#4751
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?target: ConstantPathNode, ?operator_loc: Location, ?value: Prism::node) -> ConstantPathWriteNode
- #
- # source://prism//lib/prism/node.rb#4761
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), target: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#4746
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, target: ConstantPathNode, operator_loc: Location, value: Prism::node }
- #
- # source://prism//lib/prism/node.rb#4769
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#4804
- sig { override.returns(String) }
- def inspect; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#4799
- def operator; end
-
- # The location of the `=` operator.
- #
- # ::ABC = 123
- # ^
- #
- # source://prism//lib/prism/node.rb#4786
- def operator_loc; end
-
- # A node representing the constant path being written to.
- #
- # Foo::Bar = 1
- # ^^^^^^^^
- #
- # ::Foo = :abc
- # ^^^^^
- #
- # source://prism//lib/prism/node.rb#4780
- def target; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#4809
- sig { override.returns(Symbol) }
- def type; end
-
- # The value to write to the constant path. It can be any [non-void expression](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#non-void-expression).
- #
- # FOO::BAR = :abc
- # ^^^^
- #
- # source://prism//lib/prism/node.rb#4796
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#4814
- def type; end
- end
-end
-
-# Represents referencing a constant.
-#
-# Foo
-# ^^^
-#
-# source://prism//lib/prism/node.rb#4832
-class Prism::ConstantReadNode < ::Prism::Node
- # Initialize a new ConstantReadNode node.
- #
- # @return [ConstantReadNode] a new instance of ConstantReadNode
- #
- # source://prism//lib/prism/node.rb#4834
- def initialize(source, node_id, location, flags, name); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#4899
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#4843
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#4848
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#4858
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#4853
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol) -> ConstantReadNode
- #
- # source://prism//lib/prism/node.rb#4863
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#4848
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol }
- #
- # source://prism//lib/prism/node.rb#4871
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # Returns the full name of this constant. For example: "Foo"
- #
- # source://prism//lib/prism/node_ext.rb#139
- sig { returns(String) }
- def full_name; end
-
- # Returns the list of parts for the full name of this constant.
- # For example: [:Foo]
- #
- # source://prism//lib/prism/node_ext.rb#134
- sig { returns(T::Array[Symbol]) }
- def full_name_parts; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#4883
- sig { override.returns(String) }
- def inspect; end
-
- # The name of the [constant](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#constants).
- #
- # X # name `:X`
- #
- # SOME_CONSTANT # name `:SOME_CONSTANT`
- #
- # source://prism//lib/prism/node.rb#4880
- def name; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#4888
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#4893
- def type; end
- end
-end
-
-# Represents writing to a constant in a context that doesn't have an explicit value.
-#
-# Foo, Bar = baz
-# ^^^ ^^^
-#
-# source://prism//lib/prism/node.rb#4909
-class Prism::ConstantTargetNode < ::Prism::Node
- # Initialize a new ConstantTargetNode node.
- #
- # @return [ConstantTargetNode] a new instance of ConstantTargetNode
- #
- # source://prism//lib/prism/node.rb#4911
- def initialize(source, node_id, location, flags, name); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#4972
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#4920
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#4925
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#4935
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#4930
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol) -> ConstantTargetNode
- #
- # source://prism//lib/prism/node.rb#4940
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#4925
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol }
- #
- # source://prism//lib/prism/node.rb#4948
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # Returns the full name of this constant. For example: "Foo"
- #
- # source://prism//lib/prism/node_ext.rb#262
- sig { returns(String) }
- def full_name; end
-
- # Returns the list of parts for the full name of this constant.
- # For example: [:Foo]
- #
- # source://prism//lib/prism/node_ext.rb#257
- sig { returns(T::Array[Symbol]) }
- def full_name_parts; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#4956
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#4953
- def name; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#4961
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#4966
- def type; end
- end
-end
-
-# Represents writing to a constant.
-#
-# Foo = 1
-# ^^^^^^^
-#
-# source://prism//lib/prism/node.rb#4982
-class Prism::ConstantWriteNode < ::Prism::Node
- # Initialize a new ConstantWriteNode node.
- #
- # @return [ConstantWriteNode] a new instance of ConstantWriteNode
- #
- # source://prism//lib/prism/node.rb#4984
- def initialize(source, node_id, location, flags, name, name_loc, value, operator_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#5086
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#4996
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#5001
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#5011
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#5006
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol, ?name_loc: Location, ?value: Prism::node, ?operator_loc: Location) -> ConstantWriteNode
- #
- # source://prism//lib/prism/node.rb#5016
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), value: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#5001
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol, name_loc: Location, value: Prism::node, operator_loc: Location }
- #
- # source://prism//lib/prism/node.rb#5024
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # Returns the full name of this constant. For example: "Foo"
- #
- # source://prism//lib/prism/node_ext.rb#152
- sig { returns(String) }
- def full_name; end
-
- # Returns the list of parts for the full name of this constant.
- # For example: [:Foo]
- #
- # source://prism//lib/prism/node_ext.rb#147
- sig { returns(T::Array[Symbol]) }
- def full_name_parts; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#5070
- sig { override.returns(String) }
- def inspect; end
-
- # The name of the [constant](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#constants).
- #
- # Foo = :bar # name `:Foo`
- #
- # XYZ = 1 # name `:XYZ`
- #
- # source://prism//lib/prism/node.rb#5033
- def name; end
-
- # The location of the constant name.
- #
- # FOO = 1
- # ^^^
- #
- # source://prism//lib/prism/node.rb#5039
- def name_loc; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#5065
- def operator; end
-
- # The location of the `=` operator.
- #
- # FOO = :bar
- # ^
- #
- # source://prism//lib/prism/node.rb#5058
- def operator_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#5075
- sig { override.returns(Symbol) }
- def type; end
-
- # The value to write to the constant. It can be any [non-void expression](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#non-void-expression).
- #
- # FOO = :bar
- # ^^^^
- #
- # MyClass = Class.new
- # ^^^^^^^^^
- #
- # source://prism//lib/prism/node.rb#5052
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#5080
- def type; end
- end
-end
-
-# The DSL module provides a set of methods that can be used to create prism
-# nodes in a more concise manner. For example, instead of writing:
-#
-# source = Prism::Source.for("[1]")
-#
-# Prism::ArrayNode.new(
-# source,
-# 0,
-# Prism::Location.new(source, 0, 3),
-# 0,
-# [
-# Prism::IntegerNode.new(
-# source,
-# 0,
-# Prism::Location.new(source, 1, 1),
-# Prism::IntegerBaseFlags::DECIMAL,
-# 1
-# )
-# ],
-# Prism::Location.new(source, 0, 1),
-# Prism::Location.new(source, 2, 1)
-# )
-#
-# you could instead write:
-#
-# class Builder
-# include Prism::DSL
-#
-# attr_reader :default_source
-#
-# def initialize
-# @default_source = source("[1]")
-# end
-#
-# def build
-# array_node(
-# location: location(start_offset: 0, length: 3),
-# elements: [
-# integer_node(
-# location: location(start_offset: 1, length: 1),
-# flags: integer_base_flag(:decimal),
-# value: 1
-# )
-# ],
-# opening_loc: location(start_offset: 0, length: 1),
-# closing_loc: location(start_offset: 2, length: 1)
-# )
-# end
-# end
-#
-# This is mostly helpful in the context of generating trees programmatically.
-#
-# source://prism//lib/prism/dsl.rb#61
-module Prism::DSL
- extend ::Prism::DSL
-
- # Create a new AliasGlobalVariableNode node.
- #
- # source://prism//lib/prism/dsl.rb#77
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- new_name: T.any(Prism::GlobalVariableReadNode, Prism::BackReferenceReadNode, Prism::NumberedReferenceReadNode),
- old_name: T.any(Prism::GlobalVariableReadNode, Prism::BackReferenceReadNode, Prism::NumberedReferenceReadNode, Prism::SymbolNode, Prism::MissingNode),
- keyword_loc: Prism::Location
- ).returns(Prism::AliasGlobalVariableNode)
- end
- def alias_global_variable_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), new_name: T.unsafe(nil), old_name: T.unsafe(nil), keyword_loc: T.unsafe(nil)); end
-
- # Create a new AliasMethodNode node.
- #
- # source://prism//lib/prism/dsl.rb#82
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- new_name: T.any(Prism::SymbolNode, Prism::InterpolatedSymbolNode),
- old_name: T.any(Prism::SymbolNode, Prism::InterpolatedSymbolNode, Prism::GlobalVariableReadNode, Prism::MissingNode),
- keyword_loc: Prism::Location
- ).returns(Prism::AliasMethodNode)
- end
- def alias_method_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), new_name: T.unsafe(nil), old_name: T.unsafe(nil), keyword_loc: T.unsafe(nil)); end
-
- # Create a new AlternationPatternNode node.
- #
- # source://prism//lib/prism/dsl.rb#87
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- left: Prism::Node,
- right: Prism::Node,
- operator_loc: Prism::Location
- ).returns(Prism::AlternationPatternNode)
- end
- def alternation_pattern_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), left: T.unsafe(nil), right: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # Create a new AndNode node.
- #
- # source://prism//lib/prism/dsl.rb#92
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- left: Prism::Node,
- right: Prism::Node,
- operator_loc: Prism::Location
- ).returns(Prism::AndNode)
- end
- def and_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), left: T.unsafe(nil), right: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # Create a new ArgumentsNode node.
- #
- # source://prism//lib/prism/dsl.rb#97
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- arguments: T::Array[Prism::Node]
- ).returns(Prism::ArgumentsNode)
- end
- def arguments_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), arguments: T.unsafe(nil)); end
-
- # Retrieve the value of one of the ArgumentsNodeFlags flags.
- #
- # source://prism//lib/prism/dsl.rb#832
- sig { params(name: Symbol).returns(Integer) }
- def arguments_node_flag(name); end
-
- # Create a new ArrayNode node.
- #
- # source://prism//lib/prism/dsl.rb#102
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- elements: T::Array[Prism::Node],
- opening_loc: T.nilable(Prism::Location),
- closing_loc: T.nilable(Prism::Location)
- ).returns(Prism::ArrayNode)
- end
- def array_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), elements: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # Retrieve the value of one of the ArrayNodeFlags flags.
- #
- # source://prism//lib/prism/dsl.rb#842
- sig { params(name: Symbol).returns(Integer) }
- def array_node_flag(name); end
-
- # Create a new ArrayPatternNode node.
- #
- # source://prism//lib/prism/dsl.rb#107
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- constant: T.nilable(Prism::Node),
- requireds: T::Array[Prism::Node],
- rest: T.nilable(Prism::Node),
- posts: T::Array[Prism::Node],
- opening_loc: T.nilable(Prism::Location),
- closing_loc: T.nilable(Prism::Location)
- ).returns(Prism::ArrayPatternNode)
- end
- def array_pattern_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), constant: T.unsafe(nil), requireds: T.unsafe(nil), rest: T.unsafe(nil), posts: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # Create a new AssocNode node.
- #
- # source://prism//lib/prism/dsl.rb#112
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- key: Prism::Node,
- value: Prism::Node,
- operator_loc: T.nilable(Prism::Location)
- ).returns(Prism::AssocNode)
- end
- def assoc_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), key: T.unsafe(nil), value: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # Create a new AssocSplatNode node.
- #
- # source://prism//lib/prism/dsl.rb#117
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- value: T.nilable(Prism::Node),
- operator_loc: Prism::Location
- ).returns(Prism::AssocSplatNode)
- end
- def assoc_splat_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), value: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # Create a new BackReferenceReadNode node.
- #
- # source://prism//lib/prism/dsl.rb#122
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol
- ).returns(Prism::BackReferenceReadNode)
- end
- def back_reference_read_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil)); end
-
- # Create a new BeginNode node.
- #
- # source://prism//lib/prism/dsl.rb#127
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- begin_keyword_loc: T.nilable(Prism::Location),
- statements: T.nilable(Prism::StatementsNode),
- rescue_clause: T.nilable(Prism::RescueNode),
- else_clause: T.nilable(Prism::ElseNode),
- ensure_clause: T.nilable(Prism::EnsureNode),
- end_keyword_loc: T.nilable(Prism::Location)
- ).returns(Prism::BeginNode)
- end
- def begin_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), begin_keyword_loc: T.unsafe(nil), statements: T.unsafe(nil), rescue_clause: T.unsafe(nil), else_clause: T.unsafe(nil), ensure_clause: T.unsafe(nil), end_keyword_loc: T.unsafe(nil)); end
-
- # Create a new BlockArgumentNode node.
- #
- # source://prism//lib/prism/dsl.rb#132
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- expression: T.nilable(Prism::Node),
- operator_loc: Prism::Location
- ).returns(Prism::BlockArgumentNode)
- end
- def block_argument_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), expression: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # Create a new BlockLocalVariableNode node.
- #
- # source://prism//lib/prism/dsl.rb#137
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol
- ).returns(Prism::BlockLocalVariableNode)
- end
- def block_local_variable_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil)); end
-
- # Create a new BlockNode node.
- #
- # source://prism//lib/prism/dsl.rb#142
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- locals: T::Array[Symbol],
- parameters: T.nilable(T.any(Prism::BlockParametersNode, Prism::NumberedParametersNode, Prism::ItParametersNode)),
- body: T.nilable(T.any(Prism::StatementsNode, Prism::BeginNode)),
- opening_loc: Prism::Location,
- closing_loc: Prism::Location
- ).returns(Prism::BlockNode)
- end
- def block_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), locals: T.unsafe(nil), parameters: T.unsafe(nil), body: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # Create a new BlockParameterNode node.
- #
- # source://prism//lib/prism/dsl.rb#147
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: T.nilable(Symbol),
- name_loc: T.nilable(Prism::Location),
- operator_loc: Prism::Location
- ).returns(Prism::BlockParameterNode)
- end
- def block_parameter_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # Create a new BlockParametersNode node.
- #
- # source://prism//lib/prism/dsl.rb#152
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- parameters: T.nilable(Prism::ParametersNode),
- locals: T::Array[Prism::BlockLocalVariableNode],
- opening_loc: T.nilable(Prism::Location),
- closing_loc: T.nilable(Prism::Location)
- ).returns(Prism::BlockParametersNode)
- end
- def block_parameters_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), parameters: T.unsafe(nil), locals: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # Create a new BreakNode node.
- #
- # source://prism//lib/prism/dsl.rb#157
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- arguments: T.nilable(Prism::ArgumentsNode),
- keyword_loc: Prism::Location
- ).returns(Prism::BreakNode)
- end
- def break_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), arguments: T.unsafe(nil), keyword_loc: T.unsafe(nil)); end
-
- # Create a new CallAndWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#162
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- receiver: T.nilable(Prism::Node),
- call_operator_loc: T.nilable(Prism::Location),
- message_loc: T.nilable(Prism::Location),
- read_name: Symbol,
- write_name: Symbol,
- operator_loc: Prism::Location,
- value: Prism::Node
- ).returns(Prism::CallAndWriteNode)
- end
- def call_and_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), receiver: T.unsafe(nil), call_operator_loc: T.unsafe(nil), message_loc: T.unsafe(nil), read_name: T.unsafe(nil), write_name: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # Create a new CallNode node.
- #
- # source://prism//lib/prism/dsl.rb#167
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- receiver: T.nilable(Prism::Node),
- call_operator_loc: T.nilable(Prism::Location),
- name: Symbol,
- message_loc: T.nilable(Prism::Location),
- opening_loc: T.nilable(Prism::Location),
- arguments: T.nilable(Prism::ArgumentsNode),
- closing_loc: T.nilable(Prism::Location),
- block: T.nilable(Prism::Node)
- ).returns(Prism::CallNode)
- end
- def call_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), receiver: T.unsafe(nil), call_operator_loc: T.unsafe(nil), name: T.unsafe(nil), message_loc: T.unsafe(nil), opening_loc: T.unsafe(nil), arguments: T.unsafe(nil), closing_loc: T.unsafe(nil), block: T.unsafe(nil)); end
-
- # Retrieve the value of one of the CallNodeFlags flags.
- #
- # source://prism//lib/prism/dsl.rb#850
- sig { params(name: Symbol).returns(Integer) }
- def call_node_flag(name); end
-
- # Create a new CallOperatorWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#172
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- receiver: T.nilable(Prism::Node),
- call_operator_loc: T.nilable(Prism::Location),
- message_loc: T.nilable(Prism::Location),
- read_name: Symbol,
- write_name: Symbol,
- binary_operator: Symbol,
- binary_operator_loc: Prism::Location,
- value: Prism::Node
- ).returns(Prism::CallOperatorWriteNode)
- end
- def call_operator_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), receiver: T.unsafe(nil), call_operator_loc: T.unsafe(nil), message_loc: T.unsafe(nil), read_name: T.unsafe(nil), write_name: T.unsafe(nil), binary_operator: T.unsafe(nil), binary_operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # Create a new CallOrWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#177
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- receiver: T.nilable(Prism::Node),
- call_operator_loc: T.nilable(Prism::Location),
- message_loc: T.nilable(Prism::Location),
- read_name: Symbol,
- write_name: Symbol,
- operator_loc: Prism::Location,
- value: Prism::Node
- ).returns(Prism::CallOrWriteNode)
- end
- def call_or_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), receiver: T.unsafe(nil), call_operator_loc: T.unsafe(nil), message_loc: T.unsafe(nil), read_name: T.unsafe(nil), write_name: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # Create a new CallTargetNode node.
- #
- # source://prism//lib/prism/dsl.rb#182
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- receiver: Prism::Node,
- call_operator_loc: Prism::Location,
- name: Symbol,
- message_loc: Prism::Location
- ).returns(Prism::CallTargetNode)
- end
- def call_target_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), receiver: T.unsafe(nil), call_operator_loc: T.unsafe(nil), name: T.unsafe(nil), message_loc: T.unsafe(nil)); end
-
- # Create a new CapturePatternNode node.
- #
- # source://prism//lib/prism/dsl.rb#187
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- value: Prism::Node,
- target: Prism::Node,
- operator_loc: Prism::Location
- ).returns(Prism::CapturePatternNode)
- end
- def capture_pattern_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), value: T.unsafe(nil), target: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # Create a new CaseMatchNode node.
- #
- # source://prism//lib/prism/dsl.rb#192
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- predicate: T.nilable(Prism::Node),
- conditions: T::Array[Prism::Node],
- else_clause: T.nilable(Prism::ElseNode),
- case_keyword_loc: Prism::Location,
- end_keyword_loc: Prism::Location
- ).returns(Prism::CaseMatchNode)
- end
- def case_match_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), predicate: T.unsafe(nil), conditions: T.unsafe(nil), else_clause: T.unsafe(nil), case_keyword_loc: T.unsafe(nil), end_keyword_loc: T.unsafe(nil)); end
-
- # Create a new CaseNode node.
- #
- # source://prism//lib/prism/dsl.rb#197
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- predicate: T.nilable(Prism::Node),
- conditions: T::Array[Prism::Node],
- else_clause: T.nilable(Prism::ElseNode),
- case_keyword_loc: Prism::Location,
- end_keyword_loc: Prism::Location
- ).returns(Prism::CaseNode)
- end
- def case_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), predicate: T.unsafe(nil), conditions: T.unsafe(nil), else_clause: T.unsafe(nil), case_keyword_loc: T.unsafe(nil), end_keyword_loc: T.unsafe(nil)); end
-
- # Create a new ClassNode node.
- #
- # source://prism//lib/prism/dsl.rb#202
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- locals: T::Array[Symbol],
- class_keyword_loc: Prism::Location,
- constant_path: Prism::Node,
- inheritance_operator_loc: T.nilable(Prism::Location),
- superclass: T.nilable(Prism::Node),
- body: T.nilable(Prism::Node),
- end_keyword_loc: Prism::Location,
- name: Symbol
- ).returns(Prism::ClassNode)
- end
- def class_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), locals: T.unsafe(nil), class_keyword_loc: T.unsafe(nil), constant_path: T.unsafe(nil), inheritance_operator_loc: T.unsafe(nil), superclass: T.unsafe(nil), body: T.unsafe(nil), end_keyword_loc: T.unsafe(nil), name: T.unsafe(nil)); end
-
- # Create a new ClassVariableAndWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#207
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol,
- name_loc: Prism::Location,
- operator_loc: Prism::Location,
- value: Prism::Node
- ).returns(Prism::ClassVariableAndWriteNode)
- end
- def class_variable_and_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # Create a new ClassVariableOperatorWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#212
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol,
- name_loc: Prism::Location,
- binary_operator_loc: Prism::Location,
- value: Prism::Node,
- binary_operator: Symbol
- ).returns(Prism::ClassVariableOperatorWriteNode)
- end
- def class_variable_operator_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), binary_operator_loc: T.unsafe(nil), value: T.unsafe(nil), binary_operator: T.unsafe(nil)); end
-
- # Create a new ClassVariableOrWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#217
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol,
- name_loc: Prism::Location,
- operator_loc: Prism::Location,
- value: Prism::Node
- ).returns(Prism::ClassVariableOrWriteNode)
- end
- def class_variable_or_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # Create a new ClassVariableReadNode node.
- #
- # source://prism//lib/prism/dsl.rb#222
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol
- ).returns(Prism::ClassVariableReadNode)
- end
- def class_variable_read_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil)); end
-
- # Create a new ClassVariableTargetNode node.
- #
- # source://prism//lib/prism/dsl.rb#227
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol
- ).returns(Prism::ClassVariableTargetNode)
- end
- def class_variable_target_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil)); end
-
- # Create a new ClassVariableWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#232
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol,
- name_loc: Prism::Location,
- value: Prism::Node,
- operator_loc: Prism::Location
- ).returns(Prism::ClassVariableWriteNode)
- end
- def class_variable_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), value: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # Create a new ConstantAndWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#237
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol,
- name_loc: Prism::Location,
- operator_loc: Prism::Location,
- value: Prism::Node
- ).returns(Prism::ConstantAndWriteNode)
- end
- def constant_and_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # Create a new ConstantOperatorWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#242
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol,
- name_loc: Prism::Location,
- binary_operator_loc: Prism::Location,
- value: Prism::Node,
- binary_operator: Symbol
- ).returns(Prism::ConstantOperatorWriteNode)
- end
- def constant_operator_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), binary_operator_loc: T.unsafe(nil), value: T.unsafe(nil), binary_operator: T.unsafe(nil)); end
-
- # Create a new ConstantOrWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#247
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol,
- name_loc: Prism::Location,
- operator_loc: Prism::Location,
- value: Prism::Node
- ).returns(Prism::ConstantOrWriteNode)
- end
- def constant_or_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # Create a new ConstantPathAndWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#252
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- target: Prism::ConstantPathNode,
- operator_loc: Prism::Location,
- value: Prism::Node
- ).returns(Prism::ConstantPathAndWriteNode)
- end
- def constant_path_and_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), target: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # Create a new ConstantPathNode node.
- #
- # source://prism//lib/prism/dsl.rb#257
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- parent: T.nilable(Prism::Node),
- name: T.nilable(Symbol),
- delimiter_loc: Prism::Location,
- name_loc: Prism::Location
- ).returns(Prism::ConstantPathNode)
- end
- def constant_path_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), parent: T.unsafe(nil), name: T.unsafe(nil), delimiter_loc: T.unsafe(nil), name_loc: T.unsafe(nil)); end
-
- # Create a new ConstantPathOperatorWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#262
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- target: Prism::ConstantPathNode,
- binary_operator_loc: Prism::Location,
- value: Prism::Node,
- binary_operator: Symbol
- ).returns(Prism::ConstantPathOperatorWriteNode)
- end
- def constant_path_operator_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), target: T.unsafe(nil), binary_operator_loc: T.unsafe(nil), value: T.unsafe(nil), binary_operator: T.unsafe(nil)); end
-
- # Create a new ConstantPathOrWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#267
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- target: Prism::ConstantPathNode,
- operator_loc: Prism::Location,
- value: Prism::Node
- ).returns(Prism::ConstantPathOrWriteNode)
- end
- def constant_path_or_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), target: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # Create a new ConstantPathTargetNode node.
- #
- # source://prism//lib/prism/dsl.rb#272
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- parent: T.nilable(Prism::Node),
- name: T.nilable(Symbol),
- delimiter_loc: Prism::Location,
- name_loc: Prism::Location
- ).returns(Prism::ConstantPathTargetNode)
- end
- def constant_path_target_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), parent: T.unsafe(nil), name: T.unsafe(nil), delimiter_loc: T.unsafe(nil), name_loc: T.unsafe(nil)); end
-
- # Create a new ConstantPathWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#277
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- target: Prism::ConstantPathNode,
- operator_loc: Prism::Location,
- value: Prism::Node
- ).returns(Prism::ConstantPathWriteNode)
- end
- def constant_path_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), target: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # Create a new ConstantReadNode node.
- #
- # source://prism//lib/prism/dsl.rb#282
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol
- ).returns(Prism::ConstantReadNode)
- end
- def constant_read_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil)); end
-
- # Create a new ConstantTargetNode node.
- #
- # source://prism//lib/prism/dsl.rb#287
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol
- ).returns(Prism::ConstantTargetNode)
- end
- def constant_target_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil)); end
-
- # Create a new ConstantWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#292
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol,
- name_loc: Prism::Location,
- value: Prism::Node,
- operator_loc: Prism::Location
- ).returns(Prism::ConstantWriteNode)
- end
- def constant_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), value: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # Create a new DefNode node.
- #
- # source://prism//lib/prism/dsl.rb#297
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol,
- name_loc: Prism::Location,
- receiver: T.nilable(Prism::Node),
- parameters: T.nilable(Prism::ParametersNode),
- body: T.nilable(Prism::Node),
- locals: T::Array[Symbol],
- def_keyword_loc: Prism::Location,
- operator_loc: T.nilable(Prism::Location),
- lparen_loc: T.nilable(Prism::Location),
- rparen_loc: T.nilable(Prism::Location),
- equal_loc: T.nilable(Prism::Location),
- end_keyword_loc: T.nilable(Prism::Location)
- ).returns(Prism::DefNode)
- end
- def def_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), receiver: T.unsafe(nil), parameters: T.unsafe(nil), body: T.unsafe(nil), locals: T.unsafe(nil), def_keyword_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), lparen_loc: T.unsafe(nil), rparen_loc: T.unsafe(nil), equal_loc: T.unsafe(nil), end_keyword_loc: T.unsafe(nil)); end
-
- # Create a new DefinedNode node.
- #
- # source://prism//lib/prism/dsl.rb#302
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- lparen_loc: T.nilable(Prism::Location),
- value: Prism::Node,
- rparen_loc: T.nilable(Prism::Location),
- keyword_loc: Prism::Location
- ).returns(Prism::DefinedNode)
- end
- def defined_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), lparen_loc: T.unsafe(nil), value: T.unsafe(nil), rparen_loc: T.unsafe(nil), keyword_loc: T.unsafe(nil)); end
-
- # Create a new ElseNode node.
- #
- # source://prism//lib/prism/dsl.rb#307
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- else_keyword_loc: Prism::Location,
- statements: T.nilable(Prism::StatementsNode),
- end_keyword_loc: T.nilable(Prism::Location)
- ).returns(Prism::ElseNode)
- end
- def else_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), else_keyword_loc: T.unsafe(nil), statements: T.unsafe(nil), end_keyword_loc: T.unsafe(nil)); end
-
- # Create a new EmbeddedStatementsNode node.
- #
- # source://prism//lib/prism/dsl.rb#312
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- opening_loc: Prism::Location,
- statements: T.nilable(Prism::StatementsNode),
- closing_loc: Prism::Location
- ).returns(Prism::EmbeddedStatementsNode)
- end
- def embedded_statements_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), opening_loc: T.unsafe(nil), statements: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # Create a new EmbeddedVariableNode node.
- #
- # source://prism//lib/prism/dsl.rb#317
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- operator_loc: Prism::Location,
- variable: Prism::Node
- ).returns(Prism::EmbeddedVariableNode)
- end
- def embedded_variable_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), operator_loc: T.unsafe(nil), variable: T.unsafe(nil)); end
-
- # Retrieve the value of one of the EncodingFlags flags.
- #
- # source://prism//lib/prism/dsl.rb#861
- sig { params(name: Symbol).returns(Integer) }
- def encoding_flag(name); end
-
- # Create a new EnsureNode node.
- #
- # source://prism//lib/prism/dsl.rb#322
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- ensure_keyword_loc: Prism::Location,
- statements: T.nilable(Prism::StatementsNode),
- end_keyword_loc: Prism::Location
- ).returns(Prism::EnsureNode)
- end
- def ensure_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), ensure_keyword_loc: T.unsafe(nil), statements: T.unsafe(nil), end_keyword_loc: T.unsafe(nil)); end
-
- # Create a new FalseNode node.
- #
- # source://prism//lib/prism/dsl.rb#327
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer
- ).returns(Prism::FalseNode)
- end
- def false_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil)); end
-
- # Create a new FindPatternNode node.
- #
- # source://prism//lib/prism/dsl.rb#332
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- constant: T.nilable(Prism::Node),
- left: Prism::Node,
- requireds: T::Array[Prism::Node],
- right: Prism::Node,
- opening_loc: T.nilable(Prism::Location),
- closing_loc: T.nilable(Prism::Location)
- ).returns(Prism::FindPatternNode)
- end
- def find_pattern_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), constant: T.unsafe(nil), left: T.unsafe(nil), requireds: T.unsafe(nil), right: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # Create a new FlipFlopNode node.
- #
- # source://prism//lib/prism/dsl.rb#337
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- left: T.nilable(Prism::Node),
- right: T.nilable(Prism::Node),
- operator_loc: Prism::Location
- ).returns(Prism::FlipFlopNode)
- end
- def flip_flop_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), left: T.unsafe(nil), right: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # Create a new FloatNode node.
- #
- # source://prism//lib/prism/dsl.rb#342
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- value: Float
- ).returns(Prism::FloatNode)
- end
- def float_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # Create a new ForNode node.
- #
- # source://prism//lib/prism/dsl.rb#347
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- index: Prism::Node,
- collection: Prism::Node,
- statements: T.nilable(Prism::StatementsNode),
- for_keyword_loc: Prism::Location,
- in_keyword_loc: Prism::Location,
- do_keyword_loc: T.nilable(Prism::Location),
- end_keyword_loc: Prism::Location
- ).returns(Prism::ForNode)
- end
- def for_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), index: T.unsafe(nil), collection: T.unsafe(nil), statements: T.unsafe(nil), for_keyword_loc: T.unsafe(nil), in_keyword_loc: T.unsafe(nil), do_keyword_loc: T.unsafe(nil), end_keyword_loc: T.unsafe(nil)); end
-
- # Create a new ForwardingArgumentsNode node.
- #
- # source://prism//lib/prism/dsl.rb#352
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer
- ).returns(Prism::ForwardingArgumentsNode)
- end
- def forwarding_arguments_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil)); end
-
- # Create a new ForwardingParameterNode node.
- #
- # source://prism//lib/prism/dsl.rb#357
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer
- ).returns(Prism::ForwardingParameterNode)
- end
- def forwarding_parameter_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil)); end
-
- # Create a new ForwardingSuperNode node.
- #
- # source://prism//lib/prism/dsl.rb#362
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- block: T.nilable(Prism::BlockNode)
- ).returns(Prism::ForwardingSuperNode)
- end
- def forwarding_super_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), block: T.unsafe(nil)); end
-
- # Create a new GlobalVariableAndWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#367
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol,
- name_loc: Prism::Location,
- operator_loc: Prism::Location,
- value: Prism::Node
- ).returns(Prism::GlobalVariableAndWriteNode)
- end
- def global_variable_and_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # Create a new GlobalVariableOperatorWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#372
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol,
- name_loc: Prism::Location,
- binary_operator_loc: Prism::Location,
- value: Prism::Node,
- binary_operator: Symbol
- ).returns(Prism::GlobalVariableOperatorWriteNode)
- end
- def global_variable_operator_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), binary_operator_loc: T.unsafe(nil), value: T.unsafe(nil), binary_operator: T.unsafe(nil)); end
-
- # Create a new GlobalVariableOrWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#377
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol,
- name_loc: Prism::Location,
- operator_loc: Prism::Location,
- value: Prism::Node
- ).returns(Prism::GlobalVariableOrWriteNode)
- end
- def global_variable_or_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # Create a new GlobalVariableReadNode node.
- #
- # source://prism//lib/prism/dsl.rb#382
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol
- ).returns(Prism::GlobalVariableReadNode)
- end
- def global_variable_read_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil)); end
-
- # Create a new GlobalVariableTargetNode node.
- #
- # source://prism//lib/prism/dsl.rb#387
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol
- ).returns(Prism::GlobalVariableTargetNode)
- end
- def global_variable_target_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil)); end
-
- # Create a new GlobalVariableWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#392
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol,
- name_loc: Prism::Location,
- value: Prism::Node,
- operator_loc: Prism::Location
- ).returns(Prism::GlobalVariableWriteNode)
- end
- def global_variable_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), value: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # Create a new HashNode node.
- #
- # source://prism//lib/prism/dsl.rb#397
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- opening_loc: Prism::Location,
- elements: T::Array[T.any(Prism::AssocNode, Prism::AssocSplatNode)],
- closing_loc: Prism::Location
- ).returns(Prism::HashNode)
- end
- def hash_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), opening_loc: T.unsafe(nil), elements: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # Create a new HashPatternNode node.
- #
- # source://prism//lib/prism/dsl.rb#402
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- constant: T.nilable(Prism::Node),
- elements: T::Array[Prism::AssocNode],
- rest: T.nilable(T.any(Prism::AssocSplatNode, Prism::NoKeywordsParameterNode)),
- opening_loc: T.nilable(Prism::Location),
- closing_loc: T.nilable(Prism::Location)
- ).returns(Prism::HashPatternNode)
- end
- def hash_pattern_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), constant: T.unsafe(nil), elements: T.unsafe(nil), rest: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # Create a new IfNode node.
- #
- # source://prism//lib/prism/dsl.rb#407
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- if_keyword_loc: T.nilable(Prism::Location),
- predicate: Prism::Node,
- then_keyword_loc: T.nilable(Prism::Location),
- statements: T.nilable(Prism::StatementsNode),
- subsequent: T.nilable(T.any(Prism::ElseNode, Prism::IfNode)),
- end_keyword_loc: T.nilable(Prism::Location)
- ).returns(Prism::IfNode)
- end
- def if_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), if_keyword_loc: T.unsafe(nil), predicate: T.unsafe(nil), then_keyword_loc: T.unsafe(nil), statements: T.unsafe(nil), subsequent: T.unsafe(nil), end_keyword_loc: T.unsafe(nil)); end
-
- # Create a new ImaginaryNode node.
- #
- # source://prism//lib/prism/dsl.rb#412
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- numeric: T.any(Prism::FloatNode, Prism::IntegerNode, Prism::RationalNode)
- ).returns(Prism::ImaginaryNode)
- end
- def imaginary_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), numeric: T.unsafe(nil)); end
-
- # Create a new ImplicitNode node.
- #
- # source://prism//lib/prism/dsl.rb#417
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- value: Prism::Node
- ).returns(Prism::ImplicitNode)
- end
- def implicit_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # Create a new ImplicitRestNode node.
- #
- # source://prism//lib/prism/dsl.rb#422
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer
- ).returns(Prism::ImplicitRestNode)
- end
- def implicit_rest_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil)); end
-
- # Create a new InNode node.
- #
- # source://prism//lib/prism/dsl.rb#427
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- pattern: Prism::Node,
- statements: T.nilable(Prism::StatementsNode),
- in_loc: Prism::Location,
- then_loc: T.nilable(Prism::Location)
- ).returns(Prism::InNode)
- end
- def in_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), pattern: T.unsafe(nil), statements: T.unsafe(nil), in_loc: T.unsafe(nil), then_loc: T.unsafe(nil)); end
-
- # Create a new IndexAndWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#432
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- receiver: T.nilable(Prism::Node),
- call_operator_loc: T.nilable(Prism::Location),
- opening_loc: Prism::Location,
- arguments: T.nilable(Prism::ArgumentsNode),
- closing_loc: Prism::Location,
- block: T.nilable(Prism::Node),
- operator_loc: Prism::Location,
- value: Prism::Node
- ).returns(Prism::IndexAndWriteNode)
- end
- def index_and_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), receiver: T.unsafe(nil), call_operator_loc: T.unsafe(nil), opening_loc: T.unsafe(nil), arguments: T.unsafe(nil), closing_loc: T.unsafe(nil), block: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # Create a new IndexOperatorWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#437
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- receiver: T.nilable(Prism::Node),
- call_operator_loc: T.nilable(Prism::Location),
- opening_loc: Prism::Location,
- arguments: T.nilable(Prism::ArgumentsNode),
- closing_loc: Prism::Location,
- block: T.nilable(Prism::Node),
- binary_operator: Symbol,
- binary_operator_loc: Prism::Location,
- value: Prism::Node
- ).returns(Prism::IndexOperatorWriteNode)
- end
- def index_operator_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), receiver: T.unsafe(nil), call_operator_loc: T.unsafe(nil), opening_loc: T.unsafe(nil), arguments: T.unsafe(nil), closing_loc: T.unsafe(nil), block: T.unsafe(nil), binary_operator: T.unsafe(nil), binary_operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # Create a new IndexOrWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#442
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- receiver: T.nilable(Prism::Node),
- call_operator_loc: T.nilable(Prism::Location),
- opening_loc: Prism::Location,
- arguments: T.nilable(Prism::ArgumentsNode),
- closing_loc: Prism::Location,
- block: T.nilable(Prism::Node),
- operator_loc: Prism::Location,
- value: Prism::Node
- ).returns(Prism::IndexOrWriteNode)
- end
- def index_or_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), receiver: T.unsafe(nil), call_operator_loc: T.unsafe(nil), opening_loc: T.unsafe(nil), arguments: T.unsafe(nil), closing_loc: T.unsafe(nil), block: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # Create a new IndexTargetNode node.
- #
- # source://prism//lib/prism/dsl.rb#447
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- receiver: Prism::Node,
- opening_loc: Prism::Location,
- arguments: T.nilable(Prism::ArgumentsNode),
- closing_loc: Prism::Location,
- block: T.nilable(Prism::Node)
- ).returns(Prism::IndexTargetNode)
- end
- def index_target_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), receiver: T.unsafe(nil), opening_loc: T.unsafe(nil), arguments: T.unsafe(nil), closing_loc: T.unsafe(nil), block: T.unsafe(nil)); end
-
- # Create a new InstanceVariableAndWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#452
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol,
- name_loc: Prism::Location,
- operator_loc: Prism::Location,
- value: Prism::Node
- ).returns(Prism::InstanceVariableAndWriteNode)
- end
- def instance_variable_and_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # Create a new InstanceVariableOperatorWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#457
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol,
- name_loc: Prism::Location,
- binary_operator_loc: Prism::Location,
- value: Prism::Node,
- binary_operator: Symbol
- ).returns(Prism::InstanceVariableOperatorWriteNode)
- end
- def instance_variable_operator_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), binary_operator_loc: T.unsafe(nil), value: T.unsafe(nil), binary_operator: T.unsafe(nil)); end
-
- # Create a new InstanceVariableOrWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#462
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol,
- name_loc: Prism::Location,
- operator_loc: Prism::Location,
- value: Prism::Node
- ).returns(Prism::InstanceVariableOrWriteNode)
- end
- def instance_variable_or_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # Create a new InstanceVariableReadNode node.
- #
- # source://prism//lib/prism/dsl.rb#467
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol
- ).returns(Prism::InstanceVariableReadNode)
- end
- def instance_variable_read_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil)); end
-
- # Create a new InstanceVariableTargetNode node.
- #
- # source://prism//lib/prism/dsl.rb#472
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol
- ).returns(Prism::InstanceVariableTargetNode)
- end
- def instance_variable_target_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil)); end
-
- # Create a new InstanceVariableWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#477
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol,
- name_loc: Prism::Location,
- value: Prism::Node,
- operator_loc: Prism::Location
- ).returns(Prism::InstanceVariableWriteNode)
- end
- def instance_variable_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), value: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # Retrieve the value of one of the IntegerBaseFlags flags.
- #
- # source://prism//lib/prism/dsl.rb#870
- sig { params(name: Symbol).returns(Integer) }
- def integer_base_flag(name); end
-
- # Create a new IntegerNode node.
- #
- # source://prism//lib/prism/dsl.rb#482
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- value: Integer
- ).returns(Prism::IntegerNode)
- end
- def integer_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # Create a new InterpolatedMatchLastLineNode node.
- #
- # source://prism//lib/prism/dsl.rb#487
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- opening_loc: Prism::Location,
- parts: T::Array[T.any(Prism::StringNode, Prism::EmbeddedStatementsNode, Prism::EmbeddedVariableNode)],
- closing_loc: Prism::Location
- ).returns(Prism::InterpolatedMatchLastLineNode)
- end
- def interpolated_match_last_line_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), opening_loc: T.unsafe(nil), parts: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # Create a new InterpolatedRegularExpressionNode node.
- #
- # source://prism//lib/prism/dsl.rb#492
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- opening_loc: Prism::Location,
- parts: T::Array[T.any(Prism::StringNode, Prism::EmbeddedStatementsNode, Prism::EmbeddedVariableNode)],
- closing_loc: Prism::Location
- ).returns(Prism::InterpolatedRegularExpressionNode)
- end
- def interpolated_regular_expression_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), opening_loc: T.unsafe(nil), parts: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # Create a new InterpolatedStringNode node.
- #
- # source://prism//lib/prism/dsl.rb#497
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- opening_loc: T.nilable(Prism::Location),
- parts: T::Array[T.any(Prism::StringNode, Prism::EmbeddedStatementsNode, Prism::EmbeddedVariableNode, Prism::InterpolatedStringNode)],
- closing_loc: T.nilable(Prism::Location)
- ).returns(Prism::InterpolatedStringNode)
- end
- def interpolated_string_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), opening_loc: T.unsafe(nil), parts: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # Retrieve the value of one of the InterpolatedStringNodeFlags flags.
- #
- # source://prism//lib/prism/dsl.rb#881
- sig { params(name: Symbol).returns(Integer) }
- def interpolated_string_node_flag(name); end
-
- # Create a new InterpolatedSymbolNode node.
- #
- # source://prism//lib/prism/dsl.rb#502
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- opening_loc: T.nilable(Prism::Location),
- parts: T::Array[T.any(Prism::StringNode, Prism::EmbeddedStatementsNode, Prism::EmbeddedVariableNode)],
- closing_loc: T.nilable(Prism::Location)
- ).returns(Prism::InterpolatedSymbolNode)
- end
- def interpolated_symbol_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), opening_loc: T.unsafe(nil), parts: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # Create a new InterpolatedXStringNode node.
- #
- # source://prism//lib/prism/dsl.rb#507
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- opening_loc: Prism::Location,
- parts: T::Array[T.any(Prism::StringNode, Prism::EmbeddedStatementsNode, Prism::EmbeddedVariableNode)],
- closing_loc: Prism::Location
- ).returns(Prism::InterpolatedXStringNode)
- end
- def interpolated_x_string_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), opening_loc: T.unsafe(nil), parts: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # Create a new ItLocalVariableReadNode node.
- #
- # source://prism//lib/prism/dsl.rb#512
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer
- ).returns(Prism::ItLocalVariableReadNode)
- end
- def it_local_variable_read_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil)); end
-
- # Create a new ItParametersNode node.
- #
- # source://prism//lib/prism/dsl.rb#517
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer
- ).returns(Prism::ItParametersNode)
- end
- def it_parameters_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil)); end
-
- # Create a new KeywordHashNode node.
- #
- # source://prism//lib/prism/dsl.rb#522
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- elements: T::Array[T.any(Prism::AssocNode, Prism::AssocSplatNode)]
- ).returns(Prism::KeywordHashNode)
- end
- def keyword_hash_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), elements: T.unsafe(nil)); end
-
- # Retrieve the value of one of the KeywordHashNodeFlags flags.
- #
- # source://prism//lib/prism/dsl.rb#890
- sig { params(name: Symbol).returns(Integer) }
- def keyword_hash_node_flag(name); end
-
- # Create a new KeywordRestParameterNode node.
- #
- # source://prism//lib/prism/dsl.rb#527
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: T.nilable(Symbol),
- name_loc: T.nilable(Prism::Location),
- operator_loc: Prism::Location
- ).returns(Prism::KeywordRestParameterNode)
- end
- def keyword_rest_parameter_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # Create a new LambdaNode node.
- #
- # source://prism//lib/prism/dsl.rb#532
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- locals: T::Array[Symbol],
- operator_loc: Prism::Location,
- opening_loc: Prism::Location,
- closing_loc: Prism::Location,
- parameters: T.nilable(Prism::Node),
- body: T.nilable(Prism::Node)
- ).returns(Prism::LambdaNode)
- end
- def lambda_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), locals: T.unsafe(nil), operator_loc: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), parameters: T.unsafe(nil), body: T.unsafe(nil)); end
-
- # Create a new LocalVariableAndWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#537
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name_loc: Prism::Location,
- operator_loc: Prism::Location,
- value: Prism::Node,
- name: Symbol,
- depth: Integer
- ).returns(Prism::LocalVariableAndWriteNode)
- end
- def local_variable_and_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), name: T.unsafe(nil), depth: T.unsafe(nil)); end
-
- # Create a new LocalVariableOperatorWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#542
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name_loc: Prism::Location,
- binary_operator_loc: Prism::Location,
- value: Prism::Node,
- name: Symbol,
- binary_operator: Symbol,
- depth: Integer
- ).returns(Prism::LocalVariableOperatorWriteNode)
- end
- def local_variable_operator_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name_loc: T.unsafe(nil), binary_operator_loc: T.unsafe(nil), value: T.unsafe(nil), name: T.unsafe(nil), binary_operator: T.unsafe(nil), depth: T.unsafe(nil)); end
-
- # Create a new LocalVariableOrWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#547
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name_loc: Prism::Location,
- operator_loc: Prism::Location,
- value: Prism::Node,
- name: Symbol,
- depth: Integer
- ).returns(Prism::LocalVariableOrWriteNode)
- end
- def local_variable_or_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), name: T.unsafe(nil), depth: T.unsafe(nil)); end
-
- # Create a new LocalVariableReadNode node.
- #
- # source://prism//lib/prism/dsl.rb#552
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol,
- depth: Integer
- ).returns(Prism::LocalVariableReadNode)
- end
- def local_variable_read_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), depth: T.unsafe(nil)); end
-
- # Create a new LocalVariableTargetNode node.
- #
- # source://prism//lib/prism/dsl.rb#557
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol,
- depth: Integer
- ).returns(Prism::LocalVariableTargetNode)
- end
- def local_variable_target_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), depth: T.unsafe(nil)); end
-
- # Create a new LocalVariableWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#562
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol,
- depth: Integer,
- name_loc: Prism::Location,
- value: Prism::Node,
- operator_loc: Prism::Location
- ).returns(Prism::LocalVariableWriteNode)
- end
- def local_variable_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), depth: T.unsafe(nil), name_loc: T.unsafe(nil), value: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # Create a new Location object.
- #
- # source://prism//lib/prism/dsl.rb#72
- sig { params(source: Prism::Source, start_offset: Integer, length: Integer).returns(Prism::Location) }
- def location(source: T.unsafe(nil), start_offset: T.unsafe(nil), length: T.unsafe(nil)); end
-
- # Retrieve the value of one of the LoopFlags flags.
- #
- # source://prism//lib/prism/dsl.rb#898
- sig { params(name: Symbol).returns(Integer) }
- def loop_flag(name); end
-
- # Create a new MatchLastLineNode node.
- #
- # source://prism//lib/prism/dsl.rb#567
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- opening_loc: Prism::Location,
- content_loc: Prism::Location,
- closing_loc: Prism::Location,
- unescaped: String
- ).returns(Prism::MatchLastLineNode)
- end
- def match_last_line_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), opening_loc: T.unsafe(nil), content_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), unescaped: T.unsafe(nil)); end
-
- # Create a new MatchPredicateNode node.
- #
- # source://prism//lib/prism/dsl.rb#572
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- value: Prism::Node,
- pattern: Prism::Node,
- operator_loc: Prism::Location
- ).returns(Prism::MatchPredicateNode)
- end
- def match_predicate_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), value: T.unsafe(nil), pattern: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # Create a new MatchRequiredNode node.
- #
- # source://prism//lib/prism/dsl.rb#577
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- value: Prism::Node,
- pattern: Prism::Node,
- operator_loc: Prism::Location
- ).returns(Prism::MatchRequiredNode)
- end
- def match_required_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), value: T.unsafe(nil), pattern: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # Create a new MatchWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#582
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- call: Prism::CallNode,
- targets: T::Array[Prism::LocalVariableTargetNode]
- ).returns(Prism::MatchWriteNode)
- end
- def match_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), call: T.unsafe(nil), targets: T.unsafe(nil)); end
-
- # Create a new MissingNode node.
- #
- # source://prism//lib/prism/dsl.rb#587
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer
- ).returns(Prism::MissingNode)
- end
- def missing_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil)); end
-
- # Create a new ModuleNode node.
- #
- # source://prism//lib/prism/dsl.rb#592
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- locals: T::Array[Symbol],
- module_keyword_loc: Prism::Location,
- constant_path: Prism::Node,
- body: T.nilable(Prism::Node),
- end_keyword_loc: Prism::Location,
- name: Symbol
- ).returns(Prism::ModuleNode)
- end
- def module_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), locals: T.unsafe(nil), module_keyword_loc: T.unsafe(nil), constant_path: T.unsafe(nil), body: T.unsafe(nil), end_keyword_loc: T.unsafe(nil), name: T.unsafe(nil)); end
-
- # Create a new MultiTargetNode node.
- #
- # source://prism//lib/prism/dsl.rb#597
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- lefts: T::Array[T.any(Prism::LocalVariableTargetNode, Prism::InstanceVariableTargetNode, Prism::ClassVariableTargetNode, Prism::GlobalVariableTargetNode, Prism::ConstantTargetNode, Prism::ConstantPathTargetNode, Prism::CallTargetNode, Prism::IndexTargetNode, Prism::MultiTargetNode, Prism::RequiredParameterNode, Prism::BackReferenceReadNode, Prism::NumberedReferenceReadNode)],
- rest: T.nilable(T.any(Prism::ImplicitRestNode, Prism::SplatNode)),
- rights: T::Array[T.any(Prism::LocalVariableTargetNode, Prism::InstanceVariableTargetNode, Prism::ClassVariableTargetNode, Prism::GlobalVariableTargetNode, Prism::ConstantTargetNode, Prism::ConstantPathTargetNode, Prism::CallTargetNode, Prism::IndexTargetNode, Prism::MultiTargetNode, Prism::RequiredParameterNode, Prism::BackReferenceReadNode)],
- lparen_loc: T.nilable(Prism::Location),
- rparen_loc: T.nilable(Prism::Location)
- ).returns(Prism::MultiTargetNode)
- end
- def multi_target_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), lefts: T.unsafe(nil), rest: T.unsafe(nil), rights: T.unsafe(nil), lparen_loc: T.unsafe(nil), rparen_loc: T.unsafe(nil)); end
-
- # Create a new MultiWriteNode node.
- #
- # source://prism//lib/prism/dsl.rb#602
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- lefts: T::Array[T.any(Prism::LocalVariableTargetNode, Prism::InstanceVariableTargetNode, Prism::ClassVariableTargetNode, Prism::GlobalVariableTargetNode, Prism::ConstantTargetNode, Prism::ConstantPathTargetNode, Prism::CallTargetNode, Prism::IndexTargetNode, Prism::MultiTargetNode)],
- rest: T.nilable(T.any(Prism::ImplicitRestNode, Prism::SplatNode)),
- rights: T::Array[T.any(Prism::LocalVariableTargetNode, Prism::InstanceVariableTargetNode, Prism::ClassVariableTargetNode, Prism::GlobalVariableTargetNode, Prism::ConstantTargetNode, Prism::ConstantPathTargetNode, Prism::CallTargetNode, Prism::IndexTargetNode, Prism::MultiTargetNode)],
- lparen_loc: T.nilable(Prism::Location),
- rparen_loc: T.nilable(Prism::Location),
- operator_loc: Prism::Location,
- value: Prism::Node
- ).returns(Prism::MultiWriteNode)
- end
- def multi_write_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), lefts: T.unsafe(nil), rest: T.unsafe(nil), rights: T.unsafe(nil), lparen_loc: T.unsafe(nil), rparen_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # Create a new NextNode node.
- #
- # source://prism//lib/prism/dsl.rb#607
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- arguments: T.nilable(Prism::ArgumentsNode),
- keyword_loc: Prism::Location
- ).returns(Prism::NextNode)
- end
- def next_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), arguments: T.unsafe(nil), keyword_loc: T.unsafe(nil)); end
-
- # Create a new NilNode node.
- #
- # source://prism//lib/prism/dsl.rb#612
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer
- ).returns(Prism::NilNode)
- end
- def nil_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil)); end
-
- # Create a new NoKeywordsParameterNode node.
- #
- # source://prism//lib/prism/dsl.rb#617
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- operator_loc: Prism::Location,
- keyword_loc: Prism::Location
- ).returns(Prism::NoKeywordsParameterNode)
- end
- def no_keywords_parameter_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), operator_loc: T.unsafe(nil), keyword_loc: T.unsafe(nil)); end
-
- # Create a new NumberedParametersNode node.
- #
- # source://prism//lib/prism/dsl.rb#622
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- maximum: Integer
- ).returns(Prism::NumberedParametersNode)
- end
- def numbered_parameters_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), maximum: T.unsafe(nil)); end
-
- # Create a new NumberedReferenceReadNode node.
- #
- # source://prism//lib/prism/dsl.rb#627
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- number: Integer
- ).returns(Prism::NumberedReferenceReadNode)
- end
- def numbered_reference_read_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), number: T.unsafe(nil)); end
-
- # Create a new OptionalKeywordParameterNode node.
- #
- # source://prism//lib/prism/dsl.rb#632
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol,
- name_loc: Prism::Location,
- value: Prism::Node
- ).returns(Prism::OptionalKeywordParameterNode)
- end
- def optional_keyword_parameter_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # Create a new OptionalParameterNode node.
- #
- # source://prism//lib/prism/dsl.rb#637
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol,
- name_loc: Prism::Location,
- operator_loc: Prism::Location,
- value: Prism::Node
- ).returns(Prism::OptionalParameterNode)
- end
- def optional_parameter_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # Create a new OrNode node.
- #
- # source://prism//lib/prism/dsl.rb#642
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- left: Prism::Node,
- right: Prism::Node,
- operator_loc: Prism::Location
- ).returns(Prism::OrNode)
- end
- def or_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), left: T.unsafe(nil), right: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # Retrieve the value of one of the ParameterFlags flags.
- #
- # source://prism//lib/prism/dsl.rb#906
- sig { params(name: Symbol).returns(Integer) }
- def parameter_flag(name); end
-
- # Create a new ParametersNode node.
- #
- # source://prism//lib/prism/dsl.rb#647
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- requireds: T::Array[T.any(Prism::RequiredParameterNode, Prism::MultiTargetNode)],
- optionals: T::Array[Prism::OptionalParameterNode],
- rest: T.nilable(T.any(Prism::RestParameterNode, Prism::ImplicitRestNode)),
- posts: T::Array[T.any(Prism::RequiredParameterNode, Prism::MultiTargetNode, Prism::KeywordRestParameterNode, Prism::NoKeywordsParameterNode, Prism::ForwardingParameterNode)],
- keywords: T::Array[T.any(Prism::RequiredKeywordParameterNode, Prism::OptionalKeywordParameterNode)],
- keyword_rest: T.nilable(T.any(Prism::KeywordRestParameterNode, Prism::ForwardingParameterNode, Prism::NoKeywordsParameterNode)),
- block: T.nilable(Prism::BlockParameterNode)
- ).returns(Prism::ParametersNode)
- end
- def parameters_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), requireds: T.unsafe(nil), optionals: T.unsafe(nil), rest: T.unsafe(nil), posts: T.unsafe(nil), keywords: T.unsafe(nil), keyword_rest: T.unsafe(nil), block: T.unsafe(nil)); end
-
- # Create a new ParenthesesNode node.
- #
- # source://prism//lib/prism/dsl.rb#652
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- body: T.nilable(Prism::Node),
- opening_loc: Prism::Location,
- closing_loc: Prism::Location
- ).returns(Prism::ParenthesesNode)
- end
- def parentheses_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), body: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # Create a new PinnedExpressionNode node.
- #
- # source://prism//lib/prism/dsl.rb#657
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- expression: Prism::Node,
- operator_loc: Prism::Location,
- lparen_loc: Prism::Location,
- rparen_loc: Prism::Location
- ).returns(Prism::PinnedExpressionNode)
- end
- def pinned_expression_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), expression: T.unsafe(nil), operator_loc: T.unsafe(nil), lparen_loc: T.unsafe(nil), rparen_loc: T.unsafe(nil)); end
-
- # Create a new PinnedVariableNode node.
- #
- # source://prism//lib/prism/dsl.rb#662
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- variable: Prism::Node,
- operator_loc: Prism::Location
- ).returns(Prism::PinnedVariableNode)
- end
- def pinned_variable_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), variable: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # Create a new PostExecutionNode node.
- #
- # source://prism//lib/prism/dsl.rb#667
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- statements: T.nilable(Prism::StatementsNode),
- keyword_loc: Prism::Location,
- opening_loc: Prism::Location,
- closing_loc: Prism::Location
- ).returns(Prism::PostExecutionNode)
- end
- def post_execution_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), statements: T.unsafe(nil), keyword_loc: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # Create a new PreExecutionNode node.
- #
- # source://prism//lib/prism/dsl.rb#672
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- statements: T.nilable(Prism::StatementsNode),
- keyword_loc: Prism::Location,
- opening_loc: Prism::Location,
- closing_loc: Prism::Location
- ).returns(Prism::PreExecutionNode)
- end
- def pre_execution_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), statements: T.unsafe(nil), keyword_loc: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # Create a new ProgramNode node.
- #
- # source://prism//lib/prism/dsl.rb#677
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- locals: T::Array[Symbol],
- statements: Prism::StatementsNode
- ).returns(Prism::ProgramNode)
- end
- def program_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), locals: T.unsafe(nil), statements: T.unsafe(nil)); end
-
- # Retrieve the value of one of the RangeFlags flags.
- #
- # source://prism//lib/prism/dsl.rb#914
- sig { params(name: Symbol).returns(Integer) }
- def range_flag(name); end
-
- # Create a new RangeNode node.
- #
- # source://prism//lib/prism/dsl.rb#682
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- left: T.nilable(Prism::Node),
- right: T.nilable(Prism::Node),
- operator_loc: Prism::Location
- ).returns(Prism::RangeNode)
- end
- def range_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), left: T.unsafe(nil), right: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # Create a new RationalNode node.
- #
- # source://prism//lib/prism/dsl.rb#687
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- numerator: Integer,
- denominator: Integer
- ).returns(Prism::RationalNode)
- end
- def rational_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), numerator: T.unsafe(nil), denominator: T.unsafe(nil)); end
-
- # Create a new RedoNode node.
- #
- # source://prism//lib/prism/dsl.rb#692
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer
- ).returns(Prism::RedoNode)
- end
- def redo_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil)); end
-
- # Retrieve the value of one of the RegularExpressionFlags flags.
- #
- # source://prism//lib/prism/dsl.rb#922
- sig { params(name: Symbol).returns(Integer) }
- def regular_expression_flag(name); end
-
- # Create a new RegularExpressionNode node.
- #
- # source://prism//lib/prism/dsl.rb#697
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- opening_loc: Prism::Location,
- content_loc: Prism::Location,
- closing_loc: Prism::Location,
- unescaped: String
- ).returns(Prism::RegularExpressionNode)
- end
- def regular_expression_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), opening_loc: T.unsafe(nil), content_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), unescaped: T.unsafe(nil)); end
-
- # Create a new RequiredKeywordParameterNode node.
- #
- # source://prism//lib/prism/dsl.rb#702
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol,
- name_loc: Prism::Location
- ).returns(Prism::RequiredKeywordParameterNode)
- end
- def required_keyword_parameter_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil)); end
-
- # Create a new RequiredParameterNode node.
- #
- # source://prism//lib/prism/dsl.rb#707
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol
- ).returns(Prism::RequiredParameterNode)
- end
- def required_parameter_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil)); end
-
- # Create a new RescueModifierNode node.
- #
- # source://prism//lib/prism/dsl.rb#712
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- expression: Prism::Node,
- keyword_loc: Prism::Location,
- rescue_expression: Prism::Node
- ).returns(Prism::RescueModifierNode)
- end
- def rescue_modifier_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), expression: T.unsafe(nil), keyword_loc: T.unsafe(nil), rescue_expression: T.unsafe(nil)); end
-
- # Create a new RescueNode node.
- #
- # source://prism//lib/prism/dsl.rb#717
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- keyword_loc: Prism::Location,
- exceptions: T::Array[Prism::Node],
- operator_loc: T.nilable(Prism::Location),
- reference: T.nilable(Prism::Node),
- statements: T.nilable(Prism::StatementsNode),
- subsequent: T.nilable(Prism::RescueNode)
- ).returns(Prism::RescueNode)
- end
- def rescue_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), keyword_loc: T.unsafe(nil), exceptions: T.unsafe(nil), operator_loc: T.unsafe(nil), reference: T.unsafe(nil), statements: T.unsafe(nil), subsequent: T.unsafe(nil)); end
-
- # Create a new RestParameterNode node.
- #
- # source://prism//lib/prism/dsl.rb#722
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: T.nilable(Symbol),
- name_loc: T.nilable(Prism::Location),
- operator_loc: Prism::Location
- ).returns(Prism::RestParameterNode)
- end
- def rest_parameter_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # Create a new RetryNode node.
- #
- # source://prism//lib/prism/dsl.rb#727
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer
- ).returns(Prism::RetryNode)
- end
- def retry_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil)); end
-
- # Create a new ReturnNode node.
- #
- # source://prism//lib/prism/dsl.rb#732
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- keyword_loc: Prism::Location,
- arguments: T.nilable(Prism::ArgumentsNode)
- ).returns(Prism::ReturnNode)
- end
- def return_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), keyword_loc: T.unsafe(nil), arguments: T.unsafe(nil)); end
-
- # Create a new SelfNode node.
- #
- # source://prism//lib/prism/dsl.rb#737
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer
- ).returns(Prism::SelfNode)
- end
- def self_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil)); end
-
- # Create a new ShareableConstantNode node.
- #
- # source://prism//lib/prism/dsl.rb#742
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- write: T.any(Prism::ConstantWriteNode, Prism::ConstantAndWriteNode, Prism::ConstantOrWriteNode, Prism::ConstantOperatorWriteNode, Prism::ConstantPathWriteNode, Prism::ConstantPathAndWriteNode, Prism::ConstantPathOrWriteNode, Prism::ConstantPathOperatorWriteNode)
- ).returns(Prism::ShareableConstantNode)
- end
- def shareable_constant_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), write: T.unsafe(nil)); end
-
- # Retrieve the value of one of the ShareableConstantNodeFlags flags.
- #
- # source://prism//lib/prism/dsl.rb#940
- sig { params(name: Symbol).returns(Integer) }
- def shareable_constant_node_flag(name); end
-
- # Create a new SingletonClassNode node.
- #
- # source://prism//lib/prism/dsl.rb#747
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- locals: T::Array[Symbol],
- class_keyword_loc: Prism::Location,
- operator_loc: Prism::Location,
- expression: Prism::Node,
- body: T.nilable(Prism::Node),
- end_keyword_loc: Prism::Location
- ).returns(Prism::SingletonClassNode)
- end
- def singleton_class_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), locals: T.unsafe(nil), class_keyword_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), expression: T.unsafe(nil), body: T.unsafe(nil), end_keyword_loc: T.unsafe(nil)); end
-
- # Create a new Source object.
- #
- # source://prism//lib/prism/dsl.rb#67
- sig { params(string: String).returns(Prism::Source) }
- def source(string); end
-
- # Create a new SourceEncodingNode node.
- #
- # source://prism//lib/prism/dsl.rb#752
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer
- ).returns(Prism::SourceEncodingNode)
- end
- def source_encoding_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil)); end
-
- # Create a new SourceFileNode node.
- #
- # source://prism//lib/prism/dsl.rb#757
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- filepath: String
- ).returns(Prism::SourceFileNode)
- end
- def source_file_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), filepath: T.unsafe(nil)); end
-
- # Create a new SourceLineNode node.
- #
- # source://prism//lib/prism/dsl.rb#762
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer
- ).returns(Prism::SourceLineNode)
- end
- def source_line_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil)); end
-
- # Create a new SplatNode node.
- #
- # source://prism//lib/prism/dsl.rb#767
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- operator_loc: Prism::Location,
- expression: T.nilable(Prism::Node)
- ).returns(Prism::SplatNode)
- end
- def splat_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), operator_loc: T.unsafe(nil), expression: T.unsafe(nil)); end
-
- # Create a new StatementsNode node.
- #
- # source://prism//lib/prism/dsl.rb#772
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- body: T::Array[Prism::Node]
- ).returns(Prism::StatementsNode)
- end
- def statements_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), body: T.unsafe(nil)); end
-
- # Retrieve the value of one of the StringFlags flags.
- #
- # source://prism//lib/prism/dsl.rb#950
- sig { params(name: Symbol).returns(Integer) }
- def string_flag(name); end
-
- # Create a new StringNode node.
- #
- # source://prism//lib/prism/dsl.rb#777
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- opening_loc: T.nilable(Prism::Location),
- content_loc: Prism::Location,
- closing_loc: T.nilable(Prism::Location),
- unescaped: String
- ).returns(Prism::StringNode)
- end
- def string_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), opening_loc: T.unsafe(nil), content_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), unescaped: T.unsafe(nil)); end
-
- # Create a new SuperNode node.
- #
- # source://prism//lib/prism/dsl.rb#782
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- keyword_loc: Prism::Location,
- lparen_loc: T.nilable(Prism::Location),
- arguments: T.nilable(Prism::ArgumentsNode),
- rparen_loc: T.nilable(Prism::Location),
- block: T.nilable(Prism::Node)
- ).returns(Prism::SuperNode)
- end
- def super_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), keyword_loc: T.unsafe(nil), lparen_loc: T.unsafe(nil), arguments: T.unsafe(nil), rparen_loc: T.unsafe(nil), block: T.unsafe(nil)); end
-
- # Retrieve the value of one of the SymbolFlags flags.
- #
- # source://prism//lib/prism/dsl.rb#961
- sig { params(name: Symbol).returns(Integer) }
- def symbol_flag(name); end
-
- # Create a new SymbolNode node.
- #
- # source://prism//lib/prism/dsl.rb#787
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- opening_loc: T.nilable(Prism::Location),
- value_loc: T.nilable(Prism::Location),
- closing_loc: T.nilable(Prism::Location),
- unescaped: String
- ).returns(Prism::SymbolNode)
- end
- def symbol_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), opening_loc: T.unsafe(nil), value_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), unescaped: T.unsafe(nil)); end
-
- # Create a new TrueNode node.
- #
- # source://prism//lib/prism/dsl.rb#792
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer
- ).returns(Prism::TrueNode)
- end
- def true_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil)); end
-
- # Create a new UndefNode node.
- #
- # source://prism//lib/prism/dsl.rb#797
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- names: T::Array[T.any(Prism::SymbolNode, Prism::InterpolatedSymbolNode)],
- keyword_loc: Prism::Location
- ).returns(Prism::UndefNode)
- end
- def undef_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), names: T.unsafe(nil), keyword_loc: T.unsafe(nil)); end
-
- # Create a new UnlessNode node.
- #
- # source://prism//lib/prism/dsl.rb#802
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- keyword_loc: Prism::Location,
- predicate: Prism::Node,
- then_keyword_loc: T.nilable(Prism::Location),
- statements: T.nilable(Prism::StatementsNode),
- else_clause: T.nilable(Prism::ElseNode),
- end_keyword_loc: T.nilable(Prism::Location)
- ).returns(Prism::UnlessNode)
- end
- def unless_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), keyword_loc: T.unsafe(nil), predicate: T.unsafe(nil), then_keyword_loc: T.unsafe(nil), statements: T.unsafe(nil), else_clause: T.unsafe(nil), end_keyword_loc: T.unsafe(nil)); end
-
- # Create a new UntilNode node.
- #
- # source://prism//lib/prism/dsl.rb#807
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- keyword_loc: Prism::Location,
- closing_loc: T.nilable(Prism::Location),
- predicate: Prism::Node,
- statements: T.nilable(Prism::StatementsNode)
- ).returns(Prism::UntilNode)
- end
- def until_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), keyword_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), predicate: T.unsafe(nil), statements: T.unsafe(nil)); end
-
- # Create a new WhenNode node.
- #
- # source://prism//lib/prism/dsl.rb#812
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- keyword_loc: Prism::Location,
- conditions: T::Array[Prism::Node],
- then_keyword_loc: T.nilable(Prism::Location),
- statements: T.nilable(Prism::StatementsNode)
- ).returns(Prism::WhenNode)
- end
- def when_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), keyword_loc: T.unsafe(nil), conditions: T.unsafe(nil), then_keyword_loc: T.unsafe(nil), statements: T.unsafe(nil)); end
-
- # Create a new WhileNode node.
- #
- # source://prism//lib/prism/dsl.rb#817
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- keyword_loc: Prism::Location,
- closing_loc: T.nilable(Prism::Location),
- predicate: Prism::Node,
- statements: T.nilable(Prism::StatementsNode)
- ).returns(Prism::WhileNode)
- end
- def while_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), keyword_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), predicate: T.unsafe(nil), statements: T.unsafe(nil)); end
-
- # Create a new XStringNode node.
- #
- # source://prism//lib/prism/dsl.rb#822
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- opening_loc: Prism::Location,
- content_loc: Prism::Location,
- closing_loc: Prism::Location,
- unescaped: String
- ).returns(Prism::XStringNode)
- end
- def x_string_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), opening_loc: T.unsafe(nil), content_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), unescaped: T.unsafe(nil)); end
-
- # Create a new YieldNode node.
- #
- # source://prism//lib/prism/dsl.rb#827
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- keyword_loc: Prism::Location,
- lparen_loc: T.nilable(Prism::Location),
- arguments: T.nilable(Prism::ArgumentsNode),
- rparen_loc: T.nilable(Prism::Location)
- ).returns(Prism::YieldNode)
- end
- def yield_node(source: T.unsafe(nil), node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), keyword_loc: T.unsafe(nil), lparen_loc: T.unsafe(nil), arguments: T.unsafe(nil), rparen_loc: T.unsafe(nil)); end
-
- private
-
- # The default location object that gets attached to nodes if no location is
- # specified, which uses the given source.
- #
- # source://prism//lib/prism/dsl.rb#980
- sig { returns(Prism::Location) }
- def default_location; end
-
- # The default node that gets attached to nodes if no node is specified for a
- # required node field.
- #
- # source://prism//lib/prism/dsl.rb#986
- sig { params(source: Prism::Source, location: Prism::Location).returns(Prism::Node) }
- def default_node(source, location); end
-
- # The default source object that gets attached to nodes and locations if no
- # source is specified.
- #
- # source://prism//lib/prism/dsl.rb#974
- sig { returns(Prism::Source) }
- def default_source; end
-end
-
-# Represents a method definition.
-#
-# def method
-# end
-# ^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#5100
-class Prism::DefNode < ::Prism::Node
- # Initialize a new DefNode node.
- #
- # @return [DefNode] a new instance of DefNode
- #
- # source://prism//lib/prism/node.rb#5102
- def initialize(source, node_id, location, flags, name, name_loc, receiver, parameters, body, locals, def_keyword_loc, operator_loc, lparen_loc, rparen_loc, equal_loc, end_keyword_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#5299
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#5122
- def accept(visitor); end
-
- # attr_reader body: Prism::node?
- #
- # source://prism//lib/prism/node.rb#5175
- def body; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#5127
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#5141
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#5132
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol, ?name_loc: Location, ?receiver: Prism::node?, ?parameters: ParametersNode?, ?body: Prism::node?, ?locals: Array[Symbol], ?def_keyword_loc: Location, ?operator_loc: Location?, ?lparen_loc: Location?, ?rparen_loc: Location?, ?equal_loc: Location?, ?end_keyword_loc: Location?) -> DefNode
- #
- # source://prism//lib/prism/node.rb#5146
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), receiver: T.unsafe(nil), parameters: T.unsafe(nil), body: T.unsafe(nil), locals: T.unsafe(nil), def_keyword_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), lparen_loc: T.unsafe(nil), rparen_loc: T.unsafe(nil), equal_loc: T.unsafe(nil), end_keyword_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#5127
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol, name_loc: Location, receiver: Prism::node?, parameters: ParametersNode?, body: Prism::node?, locals: Array[Symbol], def_keyword_loc: Location, operator_loc: Location?, lparen_loc: Location?, rparen_loc: Location?, equal_loc: Location?, end_keyword_loc: Location? }
- #
- # source://prism//lib/prism/node.rb#5154
- def deconstruct_keys(keys); end
-
- # def def_keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#5253
- def def_keyword; end
-
- # attr_reader def_keyword_loc: Location
- #
- # source://prism//lib/prism/node.rb#5181
- def def_keyword_loc; end
-
- # def end_keyword: () -> String?
- #
- # source://prism//lib/prism/node.rb#5278
- def end_keyword; end
-
- # attr_reader end_keyword_loc: Location?
- #
- # source://prism//lib/prism/node.rb#5240
- def end_keyword_loc; end
-
- # def equal: () -> String?
- #
- # source://prism//lib/prism/node.rb#5273
- def equal; end
-
- # attr_reader equal_loc: Location?
- #
- # source://prism//lib/prism/node.rb#5227
- def equal_loc; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#5283
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader locals: Array[Symbol]
- #
- # source://prism//lib/prism/node.rb#5178
- def locals; end
-
- # def lparen: () -> String?
- #
- # source://prism//lib/prism/node.rb#5263
- def lparen; end
-
- # attr_reader lparen_loc: Location?
- #
- # source://prism//lib/prism/node.rb#5201
- def lparen_loc; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#5159
- def name; end
-
- # attr_reader name_loc: Location
- #
- # source://prism//lib/prism/node.rb#5162
- def name_loc; end
-
- # def operator: () -> String?
- #
- # source://prism//lib/prism/node.rb#5258
- def operator; end
-
- # attr_reader operator_loc: Location?
- #
- # source://prism//lib/prism/node.rb#5188
- def operator_loc; end
-
- # attr_reader parameters: ParametersNode?
- #
- # source://prism//lib/prism/node.rb#5172
- def parameters; end
-
- # attr_reader receiver: Prism::node?
- #
- # source://prism//lib/prism/node.rb#5169
- def receiver; end
-
- # def rparen: () -> String?
- #
- # source://prism//lib/prism/node.rb#5268
- def rparen; end
-
- # attr_reader rparen_loc: Location?
- #
- # source://prism//lib/prism/node.rb#5214
- def rparen_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#5288
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#5293
- def type; end
- end
-end
-
-# Represents the use of the `defined?` keyword.
-#
-# defined?(a)
-# ^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#5321
-class Prism::DefinedNode < ::Prism::Node
- # Initialize a new DefinedNode node.
- #
- # @return [DefinedNode] a new instance of DefinedNode
- #
- # source://prism//lib/prism/node.rb#5323
- def initialize(source, node_id, location, flags, lparen_loc, value, rparen_loc, keyword_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#5435
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#5335
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#5340
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#5350
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#5345
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?lparen_loc: Location?, ?value: Prism::node, ?rparen_loc: Location?, ?keyword_loc: Location) -> DefinedNode
- #
- # source://prism//lib/prism/node.rb#5355
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), lparen_loc: T.unsafe(nil), value: T.unsafe(nil), rparen_loc: T.unsafe(nil), keyword_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#5340
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, lparen_loc: Location?, value: Prism::node, rparen_loc: Location?, keyword_loc: Location }
- #
- # source://prism//lib/prism/node.rb#5363
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#5419
- sig { override.returns(String) }
- def inspect; end
-
- # def keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#5414
- def keyword; end
-
- # attr_reader keyword_loc: Location
- #
- # source://prism//lib/prism/node.rb#5397
- def keyword_loc; end
-
- # def lparen: () -> String?
- #
- # source://prism//lib/prism/node.rb#5404
- def lparen; end
-
- # attr_reader lparen_loc: Location?
- #
- # source://prism//lib/prism/node.rb#5368
- def lparen_loc; end
-
- # def rparen: () -> String?
- #
- # source://prism//lib/prism/node.rb#5409
- def rparen; end
-
- # attr_reader rparen_loc: Location?
- #
- # source://prism//lib/prism/node.rb#5384
- def rparen_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#5424
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#5381
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#5429
- def type; end
- end
-end
-
-# source://prism//lib/prism/desugar_compiler.rb#4
-class Prism::DesugarAndWriteNode
- include ::Prism::DSL
-
- # @return [DesugarAndWriteNode] a new instance of DesugarAndWriteNode
- #
- # source://prism//lib/prism/desugar_compiler.rb#9
- def initialize(node, default_source, read_class, write_class, **arguments); end
-
- # Returns the value of attribute arguments.
- #
- # source://prism//lib/prism/desugar_compiler.rb#7
- def arguments; end
-
- # Desugar `x &&= y` to `x && x = y`
- #
- # source://prism//lib/prism/desugar_compiler.rb#18
- def compile; end
-
- # Returns the value of attribute default_source.
- #
- # source://prism//lib/prism/desugar_compiler.rb#7
- def default_source; end
-
- # Returns the value of attribute node.
- #
- # source://prism//lib/prism/desugar_compiler.rb#7
- def node; end
-
- # Returns the value of attribute read_class.
- #
- # source://prism//lib/prism/desugar_compiler.rb#7
- def read_class; end
-
- # Returns the value of attribute write_class.
- #
- # source://prism//lib/prism/desugar_compiler.rb#7
- def write_class; end
-end
-
-# DesugarCompiler is a compiler that desugars Ruby code into a more primitive
-# form. This is useful for consumers that want to deal with fewer node types.
-#
-# source://prism//lib/prism/desugar_compiler.rb#255
-class Prism::DesugarCompiler < ::Prism::MutationCompiler
- # @@foo &&= bar
- #
- # becomes
- #
- # @@foo && @@foo = bar
- #
- # source://prism//lib/prism/desugar_compiler.rb#261
- def visit_class_variable_and_write_node(node); end
-
- # @@foo += bar
- #
- # becomes
- #
- # @@foo = @@foo + bar
- #
- # source://prism//lib/prism/desugar_compiler.rb#279
- def visit_class_variable_operator_write_node(node); end
-
- # @@foo ||= bar
- #
- # becomes
- #
- # defined?(@@foo) ? @@foo : @@foo = bar
- #
- # source://prism//lib/prism/desugar_compiler.rb#270
- def visit_class_variable_or_write_node(node); end
-
- # Foo &&= bar
- #
- # becomes
- #
- # Foo && Foo = bar
- #
- # source://prism//lib/prism/desugar_compiler.rb#288
- def visit_constant_and_write_node(node); end
-
- # Foo += bar
- #
- # becomes
- #
- # Foo = Foo + bar
- #
- # source://prism//lib/prism/desugar_compiler.rb#306
- def visit_constant_operator_write_node(node); end
-
- # Foo ||= bar
- #
- # becomes
- #
- # defined?(Foo) ? Foo : Foo = bar
- #
- # source://prism//lib/prism/desugar_compiler.rb#297
- def visit_constant_or_write_node(node); end
-
- # $foo &&= bar
- #
- # becomes
- #
- # $foo && $foo = bar
- #
- # source://prism//lib/prism/desugar_compiler.rb#315
- def visit_global_variable_and_write_node(node); end
-
- # $foo += bar
- #
- # becomes
- #
- # $foo = $foo + bar
- #
- # source://prism//lib/prism/desugar_compiler.rb#333
- def visit_global_variable_operator_write_node(node); end
-
- # $foo ||= bar
- #
- # becomes
- #
- # defined?($foo) ? $foo : $foo = bar
- #
- # source://prism//lib/prism/desugar_compiler.rb#324
- def visit_global_variable_or_write_node(node); end
-
- # becomes
- #
- # source://prism//lib/prism/desugar_compiler.rb#342
- def visit_instance_variable_and_write_node(node); end
-
- # becomes
- #
- # source://prism//lib/prism/desugar_compiler.rb#360
- def visit_instance_variable_operator_write_node(node); end
-
- # becomes
- #
- # source://prism//lib/prism/desugar_compiler.rb#351
- def visit_instance_variable_or_write_node(node); end
-
- # foo &&= bar
- #
- # becomes
- #
- # foo && foo = bar
- #
- # source://prism//lib/prism/desugar_compiler.rb#369
- def visit_local_variable_and_write_node(node); end
-
- # foo += bar
- #
- # becomes
- #
- # foo = foo + bar
- #
- # source://prism//lib/prism/desugar_compiler.rb#387
- def visit_local_variable_operator_write_node(node); end
-
- # foo ||= bar
- #
- # becomes
- #
- # foo || foo = bar
- #
- # source://prism//lib/prism/desugar_compiler.rb#378
- def visit_local_variable_or_write_node(node); end
-end
-
-# source://prism//lib/prism/desugar_compiler.rb#86
-class Prism::DesugarOperatorWriteNode
- include ::Prism::DSL
-
- # @return [DesugarOperatorWriteNode] a new instance of DesugarOperatorWriteNode
- #
- # source://prism//lib/prism/desugar_compiler.rb#91
- def initialize(node, default_source, read_class, write_class, **arguments); end
-
- # Returns the value of attribute arguments.
- #
- # source://prism//lib/prism/desugar_compiler.rb#89
- def arguments; end
-
- # Desugar `x += y` to `x = x + y`
- #
- # source://prism//lib/prism/desugar_compiler.rb#100
- def compile; end
-
- # Returns the value of attribute default_source.
- #
- # source://prism//lib/prism/desugar_compiler.rb#89
- def default_source; end
-
- # Returns the value of attribute node.
- #
- # source://prism//lib/prism/desugar_compiler.rb#89
- def node; end
-
- # Returns the value of attribute read_class.
- #
- # source://prism//lib/prism/desugar_compiler.rb#89
- def read_class; end
-
- # Returns the value of attribute write_class.
- #
- # source://prism//lib/prism/desugar_compiler.rb#89
- def write_class; end
-end
-
-# source://prism//lib/prism/desugar_compiler.rb#35
-class Prism::DesugarOrWriteDefinedNode
- include ::Prism::DSL
-
- # @return [DesugarOrWriteDefinedNode] a new instance of DesugarOrWriteDefinedNode
- #
- # source://prism//lib/prism/desugar_compiler.rb#40
- def initialize(node, default_source, read_class, write_class, **arguments); end
-
- # Returns the value of attribute arguments.
- #
- # source://prism//lib/prism/desugar_compiler.rb#38
- def arguments; end
-
- # Desugar `x ||= y` to `defined?(x) ? x : x = y`
- #
- # source://prism//lib/prism/desugar_compiler.rb#49
- def compile; end
-
- # Returns the value of attribute default_source.
- #
- # source://prism//lib/prism/desugar_compiler.rb#38
- def default_source; end
-
- # Returns the value of attribute node.
- #
- # source://prism//lib/prism/desugar_compiler.rb#38
- def node; end
-
- # Returns the value of attribute read_class.
- #
- # source://prism//lib/prism/desugar_compiler.rb#38
- def read_class; end
-
- # Returns the value of attribute write_class.
- #
- # source://prism//lib/prism/desugar_compiler.rb#38
- def write_class; end
-end
-
-# source://prism//lib/prism/desugar_compiler.rb#130
-class Prism::DesugarOrWriteNode
- include ::Prism::DSL
-
- # @return [DesugarOrWriteNode] a new instance of DesugarOrWriteNode
- #
- # source://prism//lib/prism/desugar_compiler.rb#135
- def initialize(node, default_source, read_class, write_class, **arguments); end
-
- # Returns the value of attribute arguments.
- #
- # source://prism//lib/prism/desugar_compiler.rb#133
- def arguments; end
-
- # Desugar `x ||= y` to `x || x = y`
- #
- # source://prism//lib/prism/desugar_compiler.rb#144
- def compile; end
-
- # Returns the value of attribute default_source.
- #
- # source://prism//lib/prism/desugar_compiler.rb#133
- def default_source; end
-
- # Returns the value of attribute node.
- #
- # source://prism//lib/prism/desugar_compiler.rb#133
- def node; end
-
- # Returns the value of attribute read_class.
- #
- # source://prism//lib/prism/desugar_compiler.rb#133
- def read_class; end
-
- # Returns the value of attribute write_class.
- #
- # source://prism//lib/prism/desugar_compiler.rb#133
- def write_class; end
-end
-
-# The dispatcher class fires events for nodes that are found while walking an
-# AST to all registered listeners. It's useful for performing different types
-# of analysis on the AST while only having to walk the tree once.
-#
-# To use the dispatcher, you would first instantiate it and register listeners
-# for the events you're interested in:
-#
-# class OctalListener
-# def on_integer_node_enter(node)
-# if node.octal? && !node.slice.start_with?("0o")
-# warn("Octal integers should be written with the 0o prefix")
-# end
-# end
-# end
-#
-# listener = OctalListener.new
-# dispatcher = Prism::Dispatcher.new
-# dispatcher.register(listener, :on_integer_node_enter)
-#
-# Then, you can walk any number of trees and dispatch events to the listeners:
-#
-# result = Prism.parse("001 + 002 + 003")
-# dispatcher.dispatch(result.value)
-#
-# Optionally, you can also use `#dispatch_once` to dispatch enter and leave
-# events for a single node without recursing further down the tree. This can
-# be useful in circumstances where you want to reuse the listeners you already
-# have registers but want to stop walking the tree at a certain point.
-#
-# integer = result.value.statements.body.first.receiver.receiver
-# dispatcher.dispatch_once(integer)
-#
-# source://prism//lib/prism/dispatcher.rb#42
-class Prism::Dispatcher < ::Prism::Visitor
- # Initialize a new dispatcher.
- #
- # @return [Dispatcher] a new instance of Dispatcher
- #
- # source://prism//lib/prism/dispatcher.rb#47
- def initialize; end
-
- # Walks `root` dispatching events to all registered listeners.
- #
- # def dispatch: (Node) -> void
- #
- # source://prism//lib/prism/visitor.rb#17
- def dispatch(node); end
-
- # Dispatches a single event for `node` to all registered listeners.
- #
- # def dispatch_once: (Node) -> void
- #
- # source://prism//lib/prism/dispatcher.rb#66
- def dispatch_once(node); end
-
- # attr_reader listeners: Hash[Symbol, Array[Listener]]
- #
- # source://prism//lib/prism/dispatcher.rb#44
- def listeners; end
-
- # Register a listener for one or more events.
- #
- # def register: (Listener, *Symbol) -> void
- #
- # source://prism//lib/prism/dispatcher.rb#54
- def register(listener, *events); end
-
- # Dispatch enter and leave events for AliasGlobalVariableNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#72
- def visit_alias_global_variable_node(node); end
-
- # Dispatch enter and leave events for AliasMethodNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#80
- def visit_alias_method_node(node); end
-
- # Dispatch enter and leave events for AlternationPatternNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#88
- def visit_alternation_pattern_node(node); end
-
- # Dispatch enter and leave events for AndNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#96
- def visit_and_node(node); end
-
- # Dispatch enter and leave events for ArgumentsNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#104
- def visit_arguments_node(node); end
-
- # Dispatch enter and leave events for ArrayNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#112
- def visit_array_node(node); end
-
- # Dispatch enter and leave events for ArrayPatternNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#120
- def visit_array_pattern_node(node); end
-
- # Dispatch enter and leave events for AssocNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#128
- def visit_assoc_node(node); end
-
- # Dispatch enter and leave events for AssocSplatNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#136
- def visit_assoc_splat_node(node); end
-
- # Dispatch enter and leave events for BackReferenceReadNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#144
- def visit_back_reference_read_node(node); end
-
- # Dispatch enter and leave events for BeginNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#152
- def visit_begin_node(node); end
-
- # Dispatch enter and leave events for BlockArgumentNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#160
- def visit_block_argument_node(node); end
-
- # Dispatch enter and leave events for BlockLocalVariableNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#168
- def visit_block_local_variable_node(node); end
-
- # Dispatch enter and leave events for BlockNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#176
- def visit_block_node(node); end
-
- # Dispatch enter and leave events for BlockParameterNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#184
- def visit_block_parameter_node(node); end
-
- # Dispatch enter and leave events for BlockParametersNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#192
- def visit_block_parameters_node(node); end
-
- # Dispatch enter and leave events for BreakNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#200
- def visit_break_node(node); end
-
- # Dispatch enter and leave events for CallAndWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#208
- def visit_call_and_write_node(node); end
-
- # Dispatch enter and leave events for CallNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#216
- def visit_call_node(node); end
-
- # Dispatch enter and leave events for CallOperatorWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#224
- def visit_call_operator_write_node(node); end
-
- # Dispatch enter and leave events for CallOrWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#232
- def visit_call_or_write_node(node); end
-
- # Dispatch enter and leave events for CallTargetNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#240
- def visit_call_target_node(node); end
-
- # Dispatch enter and leave events for CapturePatternNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#248
- def visit_capture_pattern_node(node); end
-
- # Dispatch enter and leave events for CaseMatchNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#256
- def visit_case_match_node(node); end
-
- # Dispatch enter and leave events for CaseNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#264
- def visit_case_node(node); end
-
- # Dispatch enter and leave events for ClassNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#272
- def visit_class_node(node); end
-
- # Dispatch enter and leave events for ClassVariableAndWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#280
- def visit_class_variable_and_write_node(node); end
-
- # Dispatch enter and leave events for ClassVariableOperatorWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#288
- def visit_class_variable_operator_write_node(node); end
-
- # Dispatch enter and leave events for ClassVariableOrWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#296
- def visit_class_variable_or_write_node(node); end
-
- # Dispatch enter and leave events for ClassVariableReadNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#304
- def visit_class_variable_read_node(node); end
-
- # Dispatch enter and leave events for ClassVariableTargetNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#312
- def visit_class_variable_target_node(node); end
-
- # Dispatch enter and leave events for ClassVariableWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#320
- def visit_class_variable_write_node(node); end
-
- # Dispatch enter and leave events for ConstantAndWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#328
- def visit_constant_and_write_node(node); end
-
- # Dispatch enter and leave events for ConstantOperatorWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#336
- def visit_constant_operator_write_node(node); end
-
- # Dispatch enter and leave events for ConstantOrWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#344
- def visit_constant_or_write_node(node); end
-
- # Dispatch enter and leave events for ConstantPathAndWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#352
- def visit_constant_path_and_write_node(node); end
-
- # Dispatch enter and leave events for ConstantPathNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#360
- def visit_constant_path_node(node); end
-
- # Dispatch enter and leave events for ConstantPathOperatorWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#368
- def visit_constant_path_operator_write_node(node); end
-
- # Dispatch enter and leave events for ConstantPathOrWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#376
- def visit_constant_path_or_write_node(node); end
-
- # Dispatch enter and leave events for ConstantPathTargetNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#384
- def visit_constant_path_target_node(node); end
-
- # Dispatch enter and leave events for ConstantPathWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#392
- def visit_constant_path_write_node(node); end
-
- # Dispatch enter and leave events for ConstantReadNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#400
- def visit_constant_read_node(node); end
-
- # Dispatch enter and leave events for ConstantTargetNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#408
- def visit_constant_target_node(node); end
-
- # Dispatch enter and leave events for ConstantWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#416
- def visit_constant_write_node(node); end
-
- # Dispatch enter and leave events for DefNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#424
- def visit_def_node(node); end
-
- # Dispatch enter and leave events for DefinedNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#432
- def visit_defined_node(node); end
-
- # Dispatch enter and leave events for ElseNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#440
- def visit_else_node(node); end
-
- # Dispatch enter and leave events for EmbeddedStatementsNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#448
- def visit_embedded_statements_node(node); end
-
- # Dispatch enter and leave events for EmbeddedVariableNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#456
- def visit_embedded_variable_node(node); end
-
- # Dispatch enter and leave events for EnsureNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#464
- def visit_ensure_node(node); end
-
- # Dispatch enter and leave events for FalseNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#472
- def visit_false_node(node); end
-
- # Dispatch enter and leave events for FindPatternNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#480
- def visit_find_pattern_node(node); end
-
- # Dispatch enter and leave events for FlipFlopNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#488
- def visit_flip_flop_node(node); end
-
- # Dispatch enter and leave events for FloatNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#496
- def visit_float_node(node); end
-
- # Dispatch enter and leave events for ForNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#504
- def visit_for_node(node); end
-
- # Dispatch enter and leave events for ForwardingArgumentsNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#512
- def visit_forwarding_arguments_node(node); end
-
- # Dispatch enter and leave events for ForwardingParameterNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#520
- def visit_forwarding_parameter_node(node); end
-
- # Dispatch enter and leave events for ForwardingSuperNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#528
- def visit_forwarding_super_node(node); end
-
- # Dispatch enter and leave events for GlobalVariableAndWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#536
- def visit_global_variable_and_write_node(node); end
-
- # Dispatch enter and leave events for GlobalVariableOperatorWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#544
- def visit_global_variable_operator_write_node(node); end
-
- # Dispatch enter and leave events for GlobalVariableOrWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#552
- def visit_global_variable_or_write_node(node); end
-
- # Dispatch enter and leave events for GlobalVariableReadNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#560
- def visit_global_variable_read_node(node); end
-
- # Dispatch enter and leave events for GlobalVariableTargetNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#568
- def visit_global_variable_target_node(node); end
-
- # Dispatch enter and leave events for GlobalVariableWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#576
- def visit_global_variable_write_node(node); end
-
- # Dispatch enter and leave events for HashNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#584
- def visit_hash_node(node); end
-
- # Dispatch enter and leave events for HashPatternNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#592
- def visit_hash_pattern_node(node); end
-
- # Dispatch enter and leave events for IfNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#600
- def visit_if_node(node); end
-
- # Dispatch enter and leave events for ImaginaryNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#608
- def visit_imaginary_node(node); end
-
- # Dispatch enter and leave events for ImplicitNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#616
- def visit_implicit_node(node); end
-
- # Dispatch enter and leave events for ImplicitRestNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#624
- def visit_implicit_rest_node(node); end
-
- # Dispatch enter and leave events for InNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#632
- def visit_in_node(node); end
-
- # Dispatch enter and leave events for IndexAndWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#640
- def visit_index_and_write_node(node); end
-
- # Dispatch enter and leave events for IndexOperatorWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#648
- def visit_index_operator_write_node(node); end
-
- # Dispatch enter and leave events for IndexOrWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#656
- def visit_index_or_write_node(node); end
-
- # Dispatch enter and leave events for IndexTargetNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#664
- def visit_index_target_node(node); end
-
- # Dispatch enter and leave events for InstanceVariableAndWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#672
- def visit_instance_variable_and_write_node(node); end
-
- # Dispatch enter and leave events for InstanceVariableOperatorWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#680
- def visit_instance_variable_operator_write_node(node); end
-
- # Dispatch enter and leave events for InstanceVariableOrWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#688
- def visit_instance_variable_or_write_node(node); end
-
- # Dispatch enter and leave events for InstanceVariableReadNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#696
- def visit_instance_variable_read_node(node); end
-
- # Dispatch enter and leave events for InstanceVariableTargetNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#704
- def visit_instance_variable_target_node(node); end
-
- # Dispatch enter and leave events for InstanceVariableWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#712
- def visit_instance_variable_write_node(node); end
-
- # Dispatch enter and leave events for IntegerNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#720
- def visit_integer_node(node); end
-
- # Dispatch enter and leave events for InterpolatedMatchLastLineNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#728
- def visit_interpolated_match_last_line_node(node); end
-
- # Dispatch enter and leave events for InterpolatedRegularExpressionNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#736
- def visit_interpolated_regular_expression_node(node); end
-
- # Dispatch enter and leave events for InterpolatedStringNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#744
- def visit_interpolated_string_node(node); end
-
- # Dispatch enter and leave events for InterpolatedSymbolNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#752
- def visit_interpolated_symbol_node(node); end
-
- # Dispatch enter and leave events for InterpolatedXStringNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#760
- def visit_interpolated_x_string_node(node); end
-
- # Dispatch enter and leave events for ItLocalVariableReadNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#768
- def visit_it_local_variable_read_node(node); end
-
- # Dispatch enter and leave events for ItParametersNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#776
- def visit_it_parameters_node(node); end
-
- # Dispatch enter and leave events for KeywordHashNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#784
- def visit_keyword_hash_node(node); end
-
- # Dispatch enter and leave events for KeywordRestParameterNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#792
- def visit_keyword_rest_parameter_node(node); end
-
- # Dispatch enter and leave events for LambdaNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#800
- def visit_lambda_node(node); end
-
- # Dispatch enter and leave events for LocalVariableAndWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#808
- def visit_local_variable_and_write_node(node); end
-
- # Dispatch enter and leave events for LocalVariableOperatorWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#816
- def visit_local_variable_operator_write_node(node); end
-
- # Dispatch enter and leave events for LocalVariableOrWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#824
- def visit_local_variable_or_write_node(node); end
-
- # Dispatch enter and leave events for LocalVariableReadNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#832
- def visit_local_variable_read_node(node); end
-
- # Dispatch enter and leave events for LocalVariableTargetNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#840
- def visit_local_variable_target_node(node); end
-
- # Dispatch enter and leave events for LocalVariableWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#848
- def visit_local_variable_write_node(node); end
-
- # Dispatch enter and leave events for MatchLastLineNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#856
- def visit_match_last_line_node(node); end
-
- # Dispatch enter and leave events for MatchPredicateNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#864
- def visit_match_predicate_node(node); end
-
- # Dispatch enter and leave events for MatchRequiredNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#872
- def visit_match_required_node(node); end
-
- # Dispatch enter and leave events for MatchWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#880
- def visit_match_write_node(node); end
-
- # Dispatch enter and leave events for MissingNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#888
- def visit_missing_node(node); end
-
- # Dispatch enter and leave events for ModuleNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#896
- def visit_module_node(node); end
-
- # Dispatch enter and leave events for MultiTargetNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#904
- def visit_multi_target_node(node); end
-
- # Dispatch enter and leave events for MultiWriteNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#912
- def visit_multi_write_node(node); end
-
- # Dispatch enter and leave events for NextNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#920
- def visit_next_node(node); end
-
- # Dispatch enter and leave events for NilNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#928
- def visit_nil_node(node); end
-
- # Dispatch enter and leave events for NoKeywordsParameterNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#936
- def visit_no_keywords_parameter_node(node); end
-
- # Dispatch enter and leave events for NumberedParametersNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#944
- def visit_numbered_parameters_node(node); end
-
- # Dispatch enter and leave events for NumberedReferenceReadNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#952
- def visit_numbered_reference_read_node(node); end
-
- # Dispatch enter and leave events for OptionalKeywordParameterNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#960
- def visit_optional_keyword_parameter_node(node); end
-
- # Dispatch enter and leave events for OptionalParameterNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#968
- def visit_optional_parameter_node(node); end
-
- # Dispatch enter and leave events for OrNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#976
- def visit_or_node(node); end
-
- # Dispatch enter and leave events for ParametersNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#984
- def visit_parameters_node(node); end
-
- # Dispatch enter and leave events for ParenthesesNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#992
- def visit_parentheses_node(node); end
-
- # Dispatch enter and leave events for PinnedExpressionNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1000
- def visit_pinned_expression_node(node); end
-
- # Dispatch enter and leave events for PinnedVariableNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1008
- def visit_pinned_variable_node(node); end
-
- # Dispatch enter and leave events for PostExecutionNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1016
- def visit_post_execution_node(node); end
-
- # Dispatch enter and leave events for PreExecutionNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1024
- def visit_pre_execution_node(node); end
-
- # Dispatch enter and leave events for ProgramNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1032
- def visit_program_node(node); end
-
- # Dispatch enter and leave events for RangeNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1040
- def visit_range_node(node); end
-
- # Dispatch enter and leave events for RationalNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1048
- def visit_rational_node(node); end
-
- # Dispatch enter and leave events for RedoNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1056
- def visit_redo_node(node); end
-
- # Dispatch enter and leave events for RegularExpressionNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1064
- def visit_regular_expression_node(node); end
-
- # Dispatch enter and leave events for RequiredKeywordParameterNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1072
- def visit_required_keyword_parameter_node(node); end
-
- # Dispatch enter and leave events for RequiredParameterNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1080
- def visit_required_parameter_node(node); end
-
- # Dispatch enter and leave events for RescueModifierNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1088
- def visit_rescue_modifier_node(node); end
-
- # Dispatch enter and leave events for RescueNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1096
- def visit_rescue_node(node); end
-
- # Dispatch enter and leave events for RestParameterNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1104
- def visit_rest_parameter_node(node); end
-
- # Dispatch enter and leave events for RetryNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1112
- def visit_retry_node(node); end
-
- # Dispatch enter and leave events for ReturnNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1120
- def visit_return_node(node); end
-
- # Dispatch enter and leave events for SelfNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1128
- def visit_self_node(node); end
-
- # Dispatch enter and leave events for ShareableConstantNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1136
- def visit_shareable_constant_node(node); end
-
- # Dispatch enter and leave events for SingletonClassNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1144
- def visit_singleton_class_node(node); end
-
- # Dispatch enter and leave events for SourceEncodingNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1152
- def visit_source_encoding_node(node); end
-
- # Dispatch enter and leave events for SourceFileNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1160
- def visit_source_file_node(node); end
-
- # Dispatch enter and leave events for SourceLineNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1168
- def visit_source_line_node(node); end
-
- # Dispatch enter and leave events for SplatNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1176
- def visit_splat_node(node); end
-
- # Dispatch enter and leave events for StatementsNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1184
- def visit_statements_node(node); end
-
- # Dispatch enter and leave events for StringNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1192
- def visit_string_node(node); end
-
- # Dispatch enter and leave events for SuperNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1200
- def visit_super_node(node); end
-
- # Dispatch enter and leave events for SymbolNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1208
- def visit_symbol_node(node); end
-
- # Dispatch enter and leave events for TrueNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1216
- def visit_true_node(node); end
-
- # Dispatch enter and leave events for UndefNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1224
- def visit_undef_node(node); end
-
- # Dispatch enter and leave events for UnlessNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1232
- def visit_unless_node(node); end
-
- # Dispatch enter and leave events for UntilNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1240
- def visit_until_node(node); end
-
- # Dispatch enter and leave events for WhenNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1248
- def visit_when_node(node); end
-
- # Dispatch enter and leave events for WhileNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1256
- def visit_while_node(node); end
-
- # Dispatch enter and leave events for XStringNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1264
- def visit_x_string_node(node); end
-
- # Dispatch enter and leave events for YieldNode nodes and continue
- # walking the tree.
- #
- # source://prism//lib/prism/dispatcher.rb#1272
- def visit_yield_node(node); end
-end
-
-# source://prism//lib/prism/dispatcher.rb#1278
-class Prism::Dispatcher::DispatchOnce < ::Prism::Visitor
- # @return [DispatchOnce] a new instance of DispatchOnce
- #
- # source://prism//lib/prism/dispatcher.rb#1281
- def initialize(listeners); end
-
- # Returns the value of attribute listeners.
- #
- # source://prism//lib/prism/dispatcher.rb#1279
- def listeners; end
-
- # Dispatch enter and leave events for AliasGlobalVariableNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1286
- def visit_alias_global_variable_node(node); end
-
- # Dispatch enter and leave events for AliasMethodNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1292
- def visit_alias_method_node(node); end
-
- # Dispatch enter and leave events for AlternationPatternNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1298
- def visit_alternation_pattern_node(node); end
-
- # Dispatch enter and leave events for AndNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1304
- def visit_and_node(node); end
-
- # Dispatch enter and leave events for ArgumentsNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1310
- def visit_arguments_node(node); end
-
- # Dispatch enter and leave events for ArrayNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1316
- def visit_array_node(node); end
-
- # Dispatch enter and leave events for ArrayPatternNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1322
- def visit_array_pattern_node(node); end
-
- # Dispatch enter and leave events for AssocNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1328
- def visit_assoc_node(node); end
-
- # Dispatch enter and leave events for AssocSplatNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1334
- def visit_assoc_splat_node(node); end
-
- # Dispatch enter and leave events for BackReferenceReadNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1340
- def visit_back_reference_read_node(node); end
-
- # Dispatch enter and leave events for BeginNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1346
- def visit_begin_node(node); end
-
- # Dispatch enter and leave events for BlockArgumentNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1352
- def visit_block_argument_node(node); end
-
- # Dispatch enter and leave events for BlockLocalVariableNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1358
- def visit_block_local_variable_node(node); end
-
- # Dispatch enter and leave events for BlockNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1364
- def visit_block_node(node); end
-
- # Dispatch enter and leave events for BlockParameterNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1370
- def visit_block_parameter_node(node); end
-
- # Dispatch enter and leave events for BlockParametersNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1376
- def visit_block_parameters_node(node); end
-
- # Dispatch enter and leave events for BreakNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1382
- def visit_break_node(node); end
-
- # Dispatch enter and leave events for CallAndWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1388
- def visit_call_and_write_node(node); end
-
- # Dispatch enter and leave events for CallNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1394
- def visit_call_node(node); end
-
- # Dispatch enter and leave events for CallOperatorWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1400
- def visit_call_operator_write_node(node); end
-
- # Dispatch enter and leave events for CallOrWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1406
- def visit_call_or_write_node(node); end
-
- # Dispatch enter and leave events for CallTargetNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1412
- def visit_call_target_node(node); end
-
- # Dispatch enter and leave events for CapturePatternNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1418
- def visit_capture_pattern_node(node); end
-
- # Dispatch enter and leave events for CaseMatchNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1424
- def visit_case_match_node(node); end
-
- # Dispatch enter and leave events for CaseNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1430
- def visit_case_node(node); end
-
- # Dispatch enter and leave events for ClassNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1436
- def visit_class_node(node); end
-
- # Dispatch enter and leave events for ClassVariableAndWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1442
- def visit_class_variable_and_write_node(node); end
-
- # Dispatch enter and leave events for ClassVariableOperatorWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1448
- def visit_class_variable_operator_write_node(node); end
-
- # Dispatch enter and leave events for ClassVariableOrWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1454
- def visit_class_variable_or_write_node(node); end
-
- # Dispatch enter and leave events for ClassVariableReadNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1460
- def visit_class_variable_read_node(node); end
-
- # Dispatch enter and leave events for ClassVariableTargetNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1466
- def visit_class_variable_target_node(node); end
-
- # Dispatch enter and leave events for ClassVariableWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1472
- def visit_class_variable_write_node(node); end
-
- # Dispatch enter and leave events for ConstantAndWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1478
- def visit_constant_and_write_node(node); end
-
- # Dispatch enter and leave events for ConstantOperatorWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1484
- def visit_constant_operator_write_node(node); end
-
- # Dispatch enter and leave events for ConstantOrWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1490
- def visit_constant_or_write_node(node); end
-
- # Dispatch enter and leave events for ConstantPathAndWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1496
- def visit_constant_path_and_write_node(node); end
-
- # Dispatch enter and leave events for ConstantPathNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1502
- def visit_constant_path_node(node); end
-
- # Dispatch enter and leave events for ConstantPathOperatorWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1508
- def visit_constant_path_operator_write_node(node); end
-
- # Dispatch enter and leave events for ConstantPathOrWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1514
- def visit_constant_path_or_write_node(node); end
-
- # Dispatch enter and leave events for ConstantPathTargetNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1520
- def visit_constant_path_target_node(node); end
-
- # Dispatch enter and leave events for ConstantPathWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1526
- def visit_constant_path_write_node(node); end
-
- # Dispatch enter and leave events for ConstantReadNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1532
- def visit_constant_read_node(node); end
-
- # Dispatch enter and leave events for ConstantTargetNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1538
- def visit_constant_target_node(node); end
-
- # Dispatch enter and leave events for ConstantWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1544
- def visit_constant_write_node(node); end
-
- # Dispatch enter and leave events for DefNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1550
- def visit_def_node(node); end
-
- # Dispatch enter and leave events for DefinedNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1556
- def visit_defined_node(node); end
-
- # Dispatch enter and leave events for ElseNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1562
- def visit_else_node(node); end
-
- # Dispatch enter and leave events for EmbeddedStatementsNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1568
- def visit_embedded_statements_node(node); end
-
- # Dispatch enter and leave events for EmbeddedVariableNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1574
- def visit_embedded_variable_node(node); end
-
- # Dispatch enter and leave events for EnsureNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1580
- def visit_ensure_node(node); end
-
- # Dispatch enter and leave events for FalseNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1586
- def visit_false_node(node); end
-
- # Dispatch enter and leave events for FindPatternNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1592
- def visit_find_pattern_node(node); end
-
- # Dispatch enter and leave events for FlipFlopNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1598
- def visit_flip_flop_node(node); end
-
- # Dispatch enter and leave events for FloatNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1604
- def visit_float_node(node); end
-
- # Dispatch enter and leave events for ForNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1610
- def visit_for_node(node); end
-
- # Dispatch enter and leave events for ForwardingArgumentsNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1616
- def visit_forwarding_arguments_node(node); end
-
- # Dispatch enter and leave events for ForwardingParameterNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1622
- def visit_forwarding_parameter_node(node); end
-
- # Dispatch enter and leave events for ForwardingSuperNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1628
- def visit_forwarding_super_node(node); end
-
- # Dispatch enter and leave events for GlobalVariableAndWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1634
- def visit_global_variable_and_write_node(node); end
-
- # Dispatch enter and leave events for GlobalVariableOperatorWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1640
- def visit_global_variable_operator_write_node(node); end
-
- # Dispatch enter and leave events for GlobalVariableOrWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1646
- def visit_global_variable_or_write_node(node); end
-
- # Dispatch enter and leave events for GlobalVariableReadNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1652
- def visit_global_variable_read_node(node); end
-
- # Dispatch enter and leave events for GlobalVariableTargetNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1658
- def visit_global_variable_target_node(node); end
-
- # Dispatch enter and leave events for GlobalVariableWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1664
- def visit_global_variable_write_node(node); end
-
- # Dispatch enter and leave events for HashNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1670
- def visit_hash_node(node); end
-
- # Dispatch enter and leave events for HashPatternNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1676
- def visit_hash_pattern_node(node); end
-
- # Dispatch enter and leave events for IfNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1682
- def visit_if_node(node); end
-
- # Dispatch enter and leave events for ImaginaryNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1688
- def visit_imaginary_node(node); end
-
- # Dispatch enter and leave events for ImplicitNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1694
- def visit_implicit_node(node); end
-
- # Dispatch enter and leave events for ImplicitRestNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1700
- def visit_implicit_rest_node(node); end
-
- # Dispatch enter and leave events for InNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1706
- def visit_in_node(node); end
-
- # Dispatch enter and leave events for IndexAndWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1712
- def visit_index_and_write_node(node); end
-
- # Dispatch enter and leave events for IndexOperatorWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1718
- def visit_index_operator_write_node(node); end
-
- # Dispatch enter and leave events for IndexOrWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1724
- def visit_index_or_write_node(node); end
-
- # Dispatch enter and leave events for IndexTargetNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1730
- def visit_index_target_node(node); end
-
- # Dispatch enter and leave events for InstanceVariableAndWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1736
- def visit_instance_variable_and_write_node(node); end
-
- # Dispatch enter and leave events for InstanceVariableOperatorWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1742
- def visit_instance_variable_operator_write_node(node); end
-
- # Dispatch enter and leave events for InstanceVariableOrWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1748
- def visit_instance_variable_or_write_node(node); end
-
- # Dispatch enter and leave events for InstanceVariableReadNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1754
- def visit_instance_variable_read_node(node); end
-
- # Dispatch enter and leave events for InstanceVariableTargetNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1760
- def visit_instance_variable_target_node(node); end
-
- # Dispatch enter and leave events for InstanceVariableWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1766
- def visit_instance_variable_write_node(node); end
-
- # Dispatch enter and leave events for IntegerNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1772
- def visit_integer_node(node); end
-
- # Dispatch enter and leave events for InterpolatedMatchLastLineNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1778
- def visit_interpolated_match_last_line_node(node); end
-
- # Dispatch enter and leave events for InterpolatedRegularExpressionNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1784
- def visit_interpolated_regular_expression_node(node); end
-
- # Dispatch enter and leave events for InterpolatedStringNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1790
- def visit_interpolated_string_node(node); end
-
- # Dispatch enter and leave events for InterpolatedSymbolNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1796
- def visit_interpolated_symbol_node(node); end
-
- # Dispatch enter and leave events for InterpolatedXStringNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1802
- def visit_interpolated_x_string_node(node); end
-
- # Dispatch enter and leave events for ItLocalVariableReadNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1808
- def visit_it_local_variable_read_node(node); end
-
- # Dispatch enter and leave events for ItParametersNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1814
- def visit_it_parameters_node(node); end
-
- # Dispatch enter and leave events for KeywordHashNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1820
- def visit_keyword_hash_node(node); end
-
- # Dispatch enter and leave events for KeywordRestParameterNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1826
- def visit_keyword_rest_parameter_node(node); end
-
- # Dispatch enter and leave events for LambdaNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1832
- def visit_lambda_node(node); end
-
- # Dispatch enter and leave events for LocalVariableAndWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1838
- def visit_local_variable_and_write_node(node); end
-
- # Dispatch enter and leave events for LocalVariableOperatorWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1844
- def visit_local_variable_operator_write_node(node); end
-
- # Dispatch enter and leave events for LocalVariableOrWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1850
- def visit_local_variable_or_write_node(node); end
-
- # Dispatch enter and leave events for LocalVariableReadNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1856
- def visit_local_variable_read_node(node); end
-
- # Dispatch enter and leave events for LocalVariableTargetNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1862
- def visit_local_variable_target_node(node); end
-
- # Dispatch enter and leave events for LocalVariableWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1868
- def visit_local_variable_write_node(node); end
-
- # Dispatch enter and leave events for MatchLastLineNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1874
- def visit_match_last_line_node(node); end
-
- # Dispatch enter and leave events for MatchPredicateNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1880
- def visit_match_predicate_node(node); end
-
- # Dispatch enter and leave events for MatchRequiredNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1886
- def visit_match_required_node(node); end
-
- # Dispatch enter and leave events for MatchWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1892
- def visit_match_write_node(node); end
-
- # Dispatch enter and leave events for MissingNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1898
- def visit_missing_node(node); end
-
- # Dispatch enter and leave events for ModuleNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1904
- def visit_module_node(node); end
-
- # Dispatch enter and leave events for MultiTargetNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1910
- def visit_multi_target_node(node); end
-
- # Dispatch enter and leave events for MultiWriteNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1916
- def visit_multi_write_node(node); end
-
- # Dispatch enter and leave events for NextNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1922
- def visit_next_node(node); end
-
- # Dispatch enter and leave events for NilNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1928
- def visit_nil_node(node); end
-
- # Dispatch enter and leave events for NoKeywordsParameterNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1934
- def visit_no_keywords_parameter_node(node); end
-
- # Dispatch enter and leave events for NumberedParametersNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1940
- def visit_numbered_parameters_node(node); end
-
- # Dispatch enter and leave events for NumberedReferenceReadNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1946
- def visit_numbered_reference_read_node(node); end
-
- # Dispatch enter and leave events for OptionalKeywordParameterNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1952
- def visit_optional_keyword_parameter_node(node); end
-
- # Dispatch enter and leave events for OptionalParameterNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1958
- def visit_optional_parameter_node(node); end
-
- # Dispatch enter and leave events for OrNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1964
- def visit_or_node(node); end
-
- # Dispatch enter and leave events for ParametersNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1970
- def visit_parameters_node(node); end
-
- # Dispatch enter and leave events for ParenthesesNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1976
- def visit_parentheses_node(node); end
-
- # Dispatch enter and leave events for PinnedExpressionNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1982
- def visit_pinned_expression_node(node); end
-
- # Dispatch enter and leave events for PinnedVariableNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1988
- def visit_pinned_variable_node(node); end
-
- # Dispatch enter and leave events for PostExecutionNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#1994
- def visit_post_execution_node(node); end
-
- # Dispatch enter and leave events for PreExecutionNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2000
- def visit_pre_execution_node(node); end
-
- # Dispatch enter and leave events for ProgramNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2006
- def visit_program_node(node); end
-
- # Dispatch enter and leave events for RangeNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2012
- def visit_range_node(node); end
-
- # Dispatch enter and leave events for RationalNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2018
- def visit_rational_node(node); end
-
- # Dispatch enter and leave events for RedoNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2024
- def visit_redo_node(node); end
-
- # Dispatch enter and leave events for RegularExpressionNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2030
- def visit_regular_expression_node(node); end
-
- # Dispatch enter and leave events for RequiredKeywordParameterNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2036
- def visit_required_keyword_parameter_node(node); end
-
- # Dispatch enter and leave events for RequiredParameterNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2042
- def visit_required_parameter_node(node); end
-
- # Dispatch enter and leave events for RescueModifierNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2048
- def visit_rescue_modifier_node(node); end
-
- # Dispatch enter and leave events for RescueNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2054
- def visit_rescue_node(node); end
-
- # Dispatch enter and leave events for RestParameterNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2060
- def visit_rest_parameter_node(node); end
-
- # Dispatch enter and leave events for RetryNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2066
- def visit_retry_node(node); end
-
- # Dispatch enter and leave events for ReturnNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2072
- def visit_return_node(node); end
-
- # Dispatch enter and leave events for SelfNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2078
- def visit_self_node(node); end
-
- # Dispatch enter and leave events for ShareableConstantNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2084
- def visit_shareable_constant_node(node); end
-
- # Dispatch enter and leave events for SingletonClassNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2090
- def visit_singleton_class_node(node); end
-
- # Dispatch enter and leave events for SourceEncodingNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2096
- def visit_source_encoding_node(node); end
-
- # Dispatch enter and leave events for SourceFileNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2102
- def visit_source_file_node(node); end
-
- # Dispatch enter and leave events for SourceLineNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2108
- def visit_source_line_node(node); end
-
- # Dispatch enter and leave events for SplatNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2114
- def visit_splat_node(node); end
-
- # Dispatch enter and leave events for StatementsNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2120
- def visit_statements_node(node); end
-
- # Dispatch enter and leave events for StringNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2126
- def visit_string_node(node); end
-
- # Dispatch enter and leave events for SuperNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2132
- def visit_super_node(node); end
-
- # Dispatch enter and leave events for SymbolNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2138
- def visit_symbol_node(node); end
-
- # Dispatch enter and leave events for TrueNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2144
- def visit_true_node(node); end
-
- # Dispatch enter and leave events for UndefNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2150
- def visit_undef_node(node); end
-
- # Dispatch enter and leave events for UnlessNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2156
- def visit_unless_node(node); end
-
- # Dispatch enter and leave events for UntilNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2162
- def visit_until_node(node); end
-
- # Dispatch enter and leave events for WhenNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2168
- def visit_when_node(node); end
-
- # Dispatch enter and leave events for WhileNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2174
- def visit_while_node(node); end
-
- # Dispatch enter and leave events for XStringNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2180
- def visit_x_string_node(node); end
-
- # Dispatch enter and leave events for YieldNode nodes.
- #
- # source://prism//lib/prism/dispatcher.rb#2186
- def visit_yield_node(node); end
-end
-
-# This visitor provides the ability to call Node#to_dot, which converts a
-# subtree into a graphviz dot graph.
-#
-# source://prism//lib/prism/dot_visitor.rb#14
-class Prism::DotVisitor < ::Prism::Visitor
- # Initialize a new dot visitor.
- #
- # @return [DotVisitor] a new instance of DotVisitor
- #
- # source://prism//lib/prism/dot_visitor.rb#106
- def initialize; end
-
- # The digraph that is being built.
- #
- # source://prism//lib/prism/dot_visitor.rb#103
- def digraph; end
-
- # Convert this visitor into a graphviz dot graph string.
- #
- # source://prism//lib/prism/dot_visitor.rb#111
- def to_dot; end
-
- # Visit a AliasGlobalVariableNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#116
- def visit_alias_global_variable_node(node); end
-
- # Visit a AliasMethodNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#141
- def visit_alias_method_node(node); end
-
- # Visit a AlternationPatternNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#166
- def visit_alternation_pattern_node(node); end
-
- # Visit a AndNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#191
- def visit_and_node(node); end
-
- # Visit a ArgumentsNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#216
- def visit_arguments_node(node); end
-
- # Visit a ArrayNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#246
- def visit_array_node(node); end
-
- # Visit a ArrayPatternNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#286
- def visit_array_pattern_node(node); end
-
- # Visit a AssocNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#348
- def visit_assoc_node(node); end
-
- # Visit a AssocSplatNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#375
- def visit_assoc_splat_node(node); end
-
- # Visit a BackReferenceReadNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#398
- def visit_back_reference_read_node(node); end
-
- # Visit a BeginNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#415
- def visit_begin_node(node); end
-
- # Visit a BlockArgumentNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#463
- def visit_block_argument_node(node); end
-
- # Visit a BlockLocalVariableNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#486
- def visit_block_local_variable_node(node); end
-
- # Visit a BlockNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#506
- def visit_block_node(node); end
-
- # Visit a BlockParameterNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#541
- def visit_block_parameter_node(node); end
-
- # Visit a BlockParametersNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#569
- def visit_block_parameters_node(node); end
-
- # Visit a BreakNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#612
- def visit_break_node(node); end
-
- # Visit a CallAndWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#635
- def visit_call_and_write_node(node); end
-
- # Visit a CallNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#681
- def visit_call_node(node); end
-
- # Visit a CallOperatorWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#739
- def visit_call_operator_write_node(node); end
-
- # Visit a CallOrWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#788
- def visit_call_or_write_node(node); end
-
- # Visit a CallTargetNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#834
- def visit_call_target_node(node); end
-
- # Visit a CapturePatternNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#864
- def visit_capture_pattern_node(node); end
-
- # Visit a CaseMatchNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#889
- def visit_case_match_node(node); end
-
- # Visit a CaseNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#934
- def visit_case_node(node); end
-
- # Visit a ClassNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#979
- def visit_class_node(node); end
-
- # Visit a ClassVariableAndWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1026
- def visit_class_variable_and_write_node(node); end
-
- # Visit a ClassVariableOperatorWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1053
- def visit_class_variable_operator_write_node(node); end
-
- # Visit a ClassVariableOrWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1083
- def visit_class_variable_or_write_node(node); end
-
- # Visit a ClassVariableReadNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1110
- def visit_class_variable_read_node(node); end
-
- # Visit a ClassVariableTargetNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1127
- def visit_class_variable_target_node(node); end
-
- # Visit a ClassVariableWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1144
- def visit_class_variable_write_node(node); end
-
- # Visit a ConstantAndWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1171
- def visit_constant_and_write_node(node); end
-
- # Visit a ConstantOperatorWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1198
- def visit_constant_operator_write_node(node); end
-
- # Visit a ConstantOrWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1228
- def visit_constant_or_write_node(node); end
-
- # Visit a ConstantPathAndWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1255
- def visit_constant_path_and_write_node(node); end
-
- # Visit a ConstantPathNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1280
- def visit_constant_path_node(node); end
-
- # Visit a ConstantPathOperatorWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1309
- def visit_constant_path_operator_write_node(node); end
-
- # Visit a ConstantPathOrWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1337
- def visit_constant_path_or_write_node(node); end
-
- # Visit a ConstantPathTargetNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1362
- def visit_constant_path_target_node(node); end
-
- # Visit a ConstantPathWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1391
- def visit_constant_path_write_node(node); end
-
- # Visit a ConstantReadNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1416
- def visit_constant_read_node(node); end
-
- # Visit a ConstantTargetNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1433
- def visit_constant_target_node(node); end
-
- # Visit a ConstantWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1450
- def visit_constant_write_node(node); end
-
- # Visit a DefNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1477
- def visit_def_node(node); end
-
- # Visit a DefinedNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1546
- def visit_defined_node(node); end
-
- # Visit a ElseNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1577
- def visit_else_node(node); end
-
- # Visit a EmbeddedStatementsNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1605
- def visit_embedded_statements_node(node); end
-
- # Visit a EmbeddedVariableNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1631
- def visit_embedded_variable_node(node); end
-
- # Visit a EnsureNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1652
- def visit_ensure_node(node); end
-
- # Visit a FalseNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1678
- def visit_false_node(node); end
-
- # Visit a FindPatternNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1692
- def visit_find_pattern_node(node); end
-
- # Visit a FlipFlopNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1743
- def visit_flip_flop_node(node); end
-
- # Visit a FloatNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1775
- def visit_float_node(node); end
-
- # Visit a ForNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1792
- def visit_for_node(node); end
-
- # Visit a ForwardingArgumentsNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1834
- def visit_forwarding_arguments_node(node); end
-
- # Visit a ForwardingParameterNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1848
- def visit_forwarding_parameter_node(node); end
-
- # Visit a ForwardingSuperNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1862
- def visit_forwarding_super_node(node); end
-
- # Visit a GlobalVariableAndWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1882
- def visit_global_variable_and_write_node(node); end
-
- # Visit a GlobalVariableOperatorWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1909
- def visit_global_variable_operator_write_node(node); end
-
- # Visit a GlobalVariableOrWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1939
- def visit_global_variable_or_write_node(node); end
-
- # Visit a GlobalVariableReadNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1966
- def visit_global_variable_read_node(node); end
-
- # Visit a GlobalVariableTargetNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#1983
- def visit_global_variable_target_node(node); end
-
- # Visit a GlobalVariableWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2000
- def visit_global_variable_write_node(node); end
-
- # Visit a HashNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2027
- def visit_hash_node(node); end
-
- # Visit a HashPatternNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2060
- def visit_hash_pattern_node(node); end
-
- # Visit a IfNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2109
- def visit_if_node(node); end
-
- # Visit a ImaginaryNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2154
- def visit_imaginary_node(node); end
-
- # Visit a ImplicitNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2172
- def visit_implicit_node(node); end
-
- # Visit a ImplicitRestNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2190
- def visit_implicit_rest_node(node); end
-
- # Visit a InNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2204
- def visit_in_node(node); end
-
- # Visit a IndexAndWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2236
- def visit_index_and_write_node(node); end
-
- # Visit a IndexOperatorWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2289
- def visit_index_operator_write_node(node); end
-
- # Visit a IndexOrWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2345
- def visit_index_or_write_node(node); end
-
- # Visit a IndexTargetNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2398
- def visit_index_target_node(node); end
-
- # Visit a InstanceVariableAndWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2437
- def visit_instance_variable_and_write_node(node); end
-
- # Visit a InstanceVariableOperatorWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2464
- def visit_instance_variable_operator_write_node(node); end
-
- # Visit a InstanceVariableOrWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2494
- def visit_instance_variable_or_write_node(node); end
-
- # Visit a InstanceVariableReadNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2521
- def visit_instance_variable_read_node(node); end
-
- # Visit a InstanceVariableTargetNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2538
- def visit_instance_variable_target_node(node); end
-
- # Visit a InstanceVariableWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2555
- def visit_instance_variable_write_node(node); end
-
- # Visit a IntegerNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2582
- def visit_integer_node(node); end
-
- # Visit a InterpolatedMatchLastLineNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2602
- def visit_interpolated_match_last_line_node(node); end
-
- # Visit a InterpolatedRegularExpressionNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2638
- def visit_interpolated_regular_expression_node(node); end
-
- # Visit a InterpolatedStringNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2674
- def visit_interpolated_string_node(node); end
-
- # Visit a InterpolatedSymbolNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2714
- def visit_interpolated_symbol_node(node); end
-
- # Visit a InterpolatedXStringNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2751
- def visit_interpolated_x_string_node(node); end
-
- # Visit a ItLocalVariableReadNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2784
- def visit_it_local_variable_read_node(node); end
-
- # Visit a ItParametersNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2798
- def visit_it_parameters_node(node); end
-
- # Visit a KeywordHashNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2812
- def visit_keyword_hash_node(node); end
-
- # Visit a KeywordRestParameterNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2842
- def visit_keyword_rest_parameter_node(node); end
-
- # Visit a LambdaNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2870
- def visit_lambda_node(node); end
-
- # Visit a LocalVariableAndWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2908
- def visit_local_variable_and_write_node(node); end
-
- # Visit a LocalVariableOperatorWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2938
- def visit_local_variable_operator_write_node(node); end
-
- # Visit a LocalVariableOrWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#2971
- def visit_local_variable_or_write_node(node); end
-
- # Visit a LocalVariableReadNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3001
- def visit_local_variable_read_node(node); end
-
- # Visit a LocalVariableTargetNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3021
- def visit_local_variable_target_node(node); end
-
- # Visit a LocalVariableWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3041
- def visit_local_variable_write_node(node); end
-
- # Visit a MatchLastLineNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3071
- def visit_match_last_line_node(node); end
-
- # Visit a MatchPredicateNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3100
- def visit_match_predicate_node(node); end
-
- # Visit a MatchRequiredNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3125
- def visit_match_required_node(node); end
-
- # Visit a MatchWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3150
- def visit_match_write_node(node); end
-
- # Visit a MissingNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3181
- def visit_missing_node(node); end
-
- # Visit a ModuleNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3195
- def visit_module_node(node); end
-
- # Visit a MultiTargetNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3231
- def visit_multi_target_node(node); end
-
- # Visit a MultiWriteNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3287
- def visit_multi_write_node(node); end
-
- # Visit a NextNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3350
- def visit_next_node(node); end
-
- # Visit a NilNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3373
- def visit_nil_node(node); end
-
- # Visit a NoKeywordsParameterNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3387
- def visit_no_keywords_parameter_node(node); end
-
- # Visit a NumberedParametersNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3407
- def visit_numbered_parameters_node(node); end
-
- # Visit a NumberedReferenceReadNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3424
- def visit_numbered_reference_read_node(node); end
-
- # Visit a OptionalKeywordParameterNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3441
- def visit_optional_keyword_parameter_node(node); end
-
- # Visit a OptionalParameterNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3468
- def visit_optional_parameter_node(node); end
-
- # Visit a OrNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3498
- def visit_or_node(node); end
-
- # Visit a ParametersNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3523
- def visit_parameters_node(node); end
-
- # Visit a ParenthesesNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3607
- def visit_parentheses_node(node); end
-
- # Visit a PinnedExpressionNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3633
- def visit_pinned_expression_node(node); end
-
- # Visit a PinnedVariableNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3660
- def visit_pinned_variable_node(node); end
-
- # Visit a PostExecutionNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3681
- def visit_post_execution_node(node); end
-
- # Visit a PreExecutionNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3710
- def visit_pre_execution_node(node); end
-
- # Visit a ProgramNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3739
- def visit_program_node(node); end
-
- # Visit a RangeNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3760
- def visit_range_node(node); end
-
- # Visit a RationalNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3792
- def visit_rational_node(node); end
-
- # Visit a RedoNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3815
- def visit_redo_node(node); end
-
- # Visit a RegularExpressionNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3829
- def visit_regular_expression_node(node); end
-
- # Visit a RequiredKeywordParameterNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3858
- def visit_required_keyword_parameter_node(node); end
-
- # Visit a RequiredParameterNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3881
- def visit_required_parameter_node(node); end
-
- # Visit a RescueModifierNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3901
- def visit_rescue_modifier_node(node); end
-
- # Visit a RescueNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3926
- def visit_rescue_node(node); end
-
- # Visit a RestParameterNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#3979
- def visit_rest_parameter_node(node); end
-
- # Visit a RetryNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#4007
- def visit_retry_node(node); end
-
- # Visit a ReturnNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#4021
- def visit_return_node(node); end
-
- # Visit a SelfNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#4044
- def visit_self_node(node); end
-
- # Visit a ShareableConstantNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#4058
- def visit_shareable_constant_node(node); end
-
- # Visit a SingletonClassNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#4079
- def visit_singleton_class_node(node); end
-
- # Visit a SourceEncodingNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#4115
- def visit_source_encoding_node(node); end
-
- # Visit a SourceFileNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#4129
- def visit_source_file_node(node); end
-
- # Visit a SourceLineNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#4149
- def visit_source_line_node(node); end
-
- # Visit a SplatNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#4163
- def visit_splat_node(node); end
-
- # Visit a StatementsNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#4186
- def visit_statements_node(node); end
-
- # Visit a StringNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#4213
- def visit_string_node(node); end
-
- # Visit a SuperNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#4246
- def visit_super_node(node); end
-
- # Visit a SymbolNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#4285
- def visit_symbol_node(node); end
-
- # Visit a TrueNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#4320
- def visit_true_node(node); end
-
- # Visit a UndefNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#4334
- def visit_undef_node(node); end
-
- # Visit a UnlessNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#4364
- def visit_unless_node(node); end
-
- # Visit a UntilNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#4407
- def visit_until_node(node); end
-
- # Visit a WhenNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#4442
- def visit_when_node(node); end
-
- # Visit a WhileNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#4483
- def visit_while_node(node); end
-
- # Visit a XStringNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#4518
- def visit_x_string_node(node); end
-
- # Visit a YieldNode node.
- #
- # source://prism//lib/prism/dot_visitor.rb#4547
- def visit_yield_node(node); end
-
- private
-
- # Inspect a node that has arguments_node_flags flags to display the flags as a
- # comma-separated list.
- #
- # source://prism//lib/prism/dot_visitor.rb#4593
- def arguments_node_flags_inspect(node); end
-
- # Inspect a node that has array_node_flags flags to display the flags as a
- # comma-separated list.
- #
- # source://prism//lib/prism/dot_visitor.rb#4603
- def array_node_flags_inspect(node); end
-
- # Inspect a node that has call_node_flags flags to display the flags as a
- # comma-separated list.
- #
- # source://prism//lib/prism/dot_visitor.rb#4611
- def call_node_flags_inspect(node); end
-
- # Inspect a node that has encoding_flags flags to display the flags as a
- # comma-separated list.
- #
- # source://prism//lib/prism/dot_visitor.rb#4622
- def encoding_flags_inspect(node); end
-
- # Inspect a node that has integer_base_flags flags to display the flags as a
- # comma-separated list.
- #
- # source://prism//lib/prism/dot_visitor.rb#4631
- def integer_base_flags_inspect(node); end
-
- # Inspect a node that has interpolated_string_node_flags flags to display the flags as a
- # comma-separated list.
- #
- # source://prism//lib/prism/dot_visitor.rb#4642
- def interpolated_string_node_flags_inspect(node); end
-
- # Inspect a node that has keyword_hash_node_flags flags to display the flags as a
- # comma-separated list.
- #
- # source://prism//lib/prism/dot_visitor.rb#4651
- def keyword_hash_node_flags_inspect(node); end
-
- # Inspect a location to display the start and end line and column numbers.
- #
- # source://prism//lib/prism/dot_visitor.rb#4587
- def location_inspect(location); end
-
- # Inspect a node that has loop_flags flags to display the flags as a
- # comma-separated list.
- #
- # source://prism//lib/prism/dot_visitor.rb#4659
- def loop_flags_inspect(node); end
-
- # Generate a unique node ID for a node throughout the digraph.
- #
- # source://prism//lib/prism/dot_visitor.rb#4582
- def node_id(node); end
-
- # Inspect a node that has parameter_flags flags to display the flags as a
- # comma-separated list.
- #
- # source://prism//lib/prism/dot_visitor.rb#4667
- def parameter_flags_inspect(node); end
-
- # Inspect a node that has range_flags flags to display the flags as a
- # comma-separated list.
- #
- # source://prism//lib/prism/dot_visitor.rb#4675
- def range_flags_inspect(node); end
-
- # Inspect a node that has regular_expression_flags flags to display the flags as a
- # comma-separated list.
- #
- # source://prism//lib/prism/dot_visitor.rb#4683
- def regular_expression_flags_inspect(node); end
-
- # Inspect a node that has shareable_constant_node_flags flags to display the flags as a
- # comma-separated list.
- #
- # source://prism//lib/prism/dot_visitor.rb#4701
- def shareable_constant_node_flags_inspect(node); end
-
- # Inspect a node that has string_flags flags to display the flags as a
- # comma-separated list.
- #
- # source://prism//lib/prism/dot_visitor.rb#4711
- def string_flags_inspect(node); end
-
- # Inspect a node that has symbol_flags flags to display the flags as a
- # comma-separated list.
- #
- # source://prism//lib/prism/dot_visitor.rb#4722
- def symbol_flags_inspect(node); end
-end
-
-# source://prism//lib/prism/dot_visitor.rb#59
-class Prism::DotVisitor::Digraph
- # @return [Digraph] a new instance of Digraph
- #
- # source://prism//lib/prism/dot_visitor.rb#62
- def initialize; end
-
- # source://prism//lib/prism/dot_visitor.rb#76
- def edge(value); end
-
- # Returns the value of attribute edges.
- #
- # source://prism//lib/prism/dot_visitor.rb#60
- def edges; end
-
- # source://prism//lib/prism/dot_visitor.rb#68
- def node(value); end
-
- # Returns the value of attribute nodes.
- #
- # source://prism//lib/prism/dot_visitor.rb#60
- def nodes; end
-
- # source://prism//lib/prism/dot_visitor.rb#80
- def to_dot; end
-
- # source://prism//lib/prism/dot_visitor.rb#72
- def waypoint(value); end
-
- # Returns the value of attribute waypoints.
- #
- # source://prism//lib/prism/dot_visitor.rb#60
- def waypoints; end
-end
-
-# source://prism//lib/prism/dot_visitor.rb#15
-class Prism::DotVisitor::Field
- # @return [Field] a new instance of Field
- #
- # source://prism//lib/prism/dot_visitor.rb#18
- def initialize(name, value, port); end
-
- # Returns the value of attribute name.
- #
- # source://prism//lib/prism/dot_visitor.rb#16
- def name; end
-
- # Returns the value of attribute port.
- #
- # source://prism//lib/prism/dot_visitor.rb#16
- def port; end
-
- # source://prism//lib/prism/dot_visitor.rb#24
- def to_dot; end
-
- # Returns the value of attribute value.
- #
- # source://prism//lib/prism/dot_visitor.rb#16
- def value; end
-end
-
-# source://prism//lib/prism/dot_visitor.rb#33
-class Prism::DotVisitor::Table
- # @return [Table] a new instance of Table
- #
- # source://prism//lib/prism/dot_visitor.rb#36
- def initialize(name); end
-
- # source://prism//lib/prism/dot_visitor.rb#41
- def field(name, value = T.unsafe(nil), port: T.unsafe(nil)); end
-
- # Returns the value of attribute fields.
- #
- # source://prism//lib/prism/dot_visitor.rb#34
- def fields; end
-
- # Returns the value of attribute name.
- #
- # source://prism//lib/prism/dot_visitor.rb#34
- def name; end
-
- # source://prism//lib/prism/dot_visitor.rb#45
- def to_dot; end
-end
-
-# Represents an `else` clause in a `case`, `if`, or `unless` statement.
-#
-# if a then b else c end
-# ^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#5448
-class Prism::ElseNode < ::Prism::Node
- # Initialize a new ElseNode node.
- #
- # @return [ElseNode] a new instance of ElseNode
- #
- # source://prism//lib/prism/node.rb#5450
- def initialize(source, node_id, location, flags, else_keyword_loc, statements, end_keyword_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#5545
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#5461
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#5466
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#5478
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#5471
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?else_keyword_loc: Location, ?statements: StatementsNode?, ?end_keyword_loc: Location?) -> ElseNode
- #
- # source://prism//lib/prism/node.rb#5483
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), else_keyword_loc: T.unsafe(nil), statements: T.unsafe(nil), end_keyword_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#5466
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, else_keyword_loc: Location, statements: StatementsNode?, end_keyword_loc: Location? }
- #
- # source://prism//lib/prism/node.rb#5491
- def deconstruct_keys(keys); end
-
- # def else_keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#5519
- def else_keyword; end
-
- # attr_reader else_keyword_loc: Location
- #
- # source://prism//lib/prism/node.rb#5496
- def else_keyword_loc; end
-
- # def end_keyword: () -> String?
- #
- # source://prism//lib/prism/node.rb#5524
- def end_keyword; end
-
- # attr_reader end_keyword_loc: Location?
- #
- # source://prism//lib/prism/node.rb#5506
- def end_keyword_loc; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#5529
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader statements: StatementsNode?
- #
- # source://prism//lib/prism/node.rb#5503
- def statements; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#5534
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#5539
- def type; end
- end
-end
-
-# EmbDocComment objects correspond to comments that are surrounded by =begin
-# and =end.
-#
-# source://prism//lib/prism/parse_result.rb#412
-class Prism::EmbDocComment < ::Prism::Comment
- # Returns a string representation of this comment.
- #
- # source://prism//lib/prism/parse_result.rb#419
- sig { returns(String) }
- def inspect; end
-
- # This can only be true for inline comments.
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/parse_result.rb#414
- sig { override.returns(T::Boolean) }
- def trailing?; end
-end
-
-# Represents an interpolated set of statements.
-#
-# "foo #{bar}"
-# ^^^^^^
-#
-# source://prism//lib/prism/node.rb#5557
-class Prism::EmbeddedStatementsNode < ::Prism::Node
- # Initialize a new EmbeddedStatementsNode node.
- #
- # @return [EmbeddedStatementsNode] a new instance of EmbeddedStatementsNode
- #
- # source://prism//lib/prism/node.rb#5559
- def initialize(source, node_id, location, flags, opening_loc, statements, closing_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#5648
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#5570
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#5575
- def child_nodes; end
-
- # def closing: () -> String
- #
- # source://prism//lib/prism/node.rb#5627
- def closing; end
-
- # attr_reader closing_loc: Location
- #
- # source://prism//lib/prism/node.rb#5615
- def closing_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#5587
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#5580
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?opening_loc: Location, ?statements: StatementsNode?, ?closing_loc: Location) -> EmbeddedStatementsNode
- #
- # source://prism//lib/prism/node.rb#5592
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), opening_loc: T.unsafe(nil), statements: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#5575
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, opening_loc: Location, statements: StatementsNode?, closing_loc: Location }
- #
- # source://prism//lib/prism/node.rb#5600
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#5632
- sig { override.returns(String) }
- def inspect; end
-
- # def opening: () -> String
- #
- # source://prism//lib/prism/node.rb#5622
- def opening; end
-
- # attr_reader opening_loc: Location
- #
- # source://prism//lib/prism/node.rb#5605
- def opening_loc; end
-
- # attr_reader statements: StatementsNode?
- #
- # source://prism//lib/prism/node.rb#5612
- def statements; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#5637
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#5642
- def type; end
- end
-end
-
-# Represents an interpolated variable.
-#
-# "foo #@bar"
-# ^^^^^
-#
-# source://prism//lib/prism/node.rb#5660
-class Prism::EmbeddedVariableNode < ::Prism::Node
- # Initialize a new EmbeddedVariableNode node.
- #
- # @return [EmbeddedVariableNode] a new instance of EmbeddedVariableNode
- #
- # source://prism//lib/prism/node.rb#5662
- def initialize(source, node_id, location, flags, operator_loc, variable); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#5736
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#5672
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#5677
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#5687
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#5682
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?operator_loc: Location, ?variable: Prism::node) -> EmbeddedVariableNode
- #
- # source://prism//lib/prism/node.rb#5692
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), operator_loc: T.unsafe(nil), variable: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#5677
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, operator_loc: Location, variable: Prism::node }
- #
- # source://prism//lib/prism/node.rb#5700
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#5720
- sig { override.returns(String) }
- def inspect; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#5715
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#5705
- def operator_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#5725
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader variable: Prism::node
- #
- # source://prism//lib/prism/node.rb#5712
- def variable; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#5730
- def type; end
- end
-end
-
-# Flags for nodes that have unescaped content.
-#
-# source://prism//lib/prism/node.rb#16680
-module Prism::EncodingFlags; end
-
-# internal bytes forced the encoding to binary
-#
-# source://prism//lib/prism/node.rb#16685
-Prism::EncodingFlags::FORCED_BINARY_ENCODING = T.let(T.unsafe(nil), Integer)
-
-# internal bytes forced the encoding to UTF-8
-#
-# source://prism//lib/prism/node.rb#16682
-Prism::EncodingFlags::FORCED_UTF8_ENCODING = T.let(T.unsafe(nil), Integer)
-
-# Represents an `ensure` clause in a `begin` statement.
-#
-# begin
-# foo
-# ensure
-# ^^^^^^
-# bar
-# end
-#
-# source://prism//lib/prism/node.rb#5751
-class Prism::EnsureNode < ::Prism::Node
- # Initialize a new EnsureNode node.
- #
- # @return [EnsureNode] a new instance of EnsureNode
- #
- # source://prism//lib/prism/node.rb#5753
- def initialize(source, node_id, location, flags, ensure_keyword_loc, statements, end_keyword_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#5842
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#5764
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#5769
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#5781
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#5774
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?ensure_keyword_loc: Location, ?statements: StatementsNode?, ?end_keyword_loc: Location) -> EnsureNode
- #
- # source://prism//lib/prism/node.rb#5786
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), ensure_keyword_loc: T.unsafe(nil), statements: T.unsafe(nil), end_keyword_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#5769
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, ensure_keyword_loc: Location, statements: StatementsNode?, end_keyword_loc: Location }
- #
- # source://prism//lib/prism/node.rb#5794
- def deconstruct_keys(keys); end
-
- # def end_keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#5821
- def end_keyword; end
-
- # attr_reader end_keyword_loc: Location
- #
- # source://prism//lib/prism/node.rb#5809
- def end_keyword_loc; end
-
- # def ensure_keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#5816
- def ensure_keyword; end
-
- # attr_reader ensure_keyword_loc: Location
- #
- # source://prism//lib/prism/node.rb#5799
- def ensure_keyword_loc; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#5826
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader statements: StatementsNode?
- #
- # source://prism//lib/prism/node.rb#5806
- def statements; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#5831
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#5836
- def type; end
- end
-end
-
-# Represents the use of the literal `false` keyword.
-#
-# false
-# ^^^^^
-#
-# source://prism//lib/prism/node.rb#5854
-class Prism::FalseNode < ::Prism::Node
- # Initialize a new FalseNode node.
- #
- # @return [FalseNode] a new instance of FalseNode
- #
- # source://prism//lib/prism/node.rb#5856
- def initialize(source, node_id, location, flags); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#5913
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#5864
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#5869
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#5879
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#5874
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer) -> FalseNode
- #
- # source://prism//lib/prism/node.rb#5884
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#5869
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location }
- #
- # source://prism//lib/prism/node.rb#5892
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#5897
- sig { override.returns(String) }
- def inspect; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#5902
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#5907
- def type; end
- end
-end
-
-# Represents a find pattern in pattern matching.
-#
-# foo in *bar, baz, *qux
-# ^^^^^^^^^^^^^^^
-#
-# foo in [*bar, baz, *qux]
-# ^^^^^^^^^^^^^^^^^
-#
-# foo in Foo(*bar, baz, *qux)
-# ^^^^^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#5928
-class Prism::FindPatternNode < ::Prism::Node
- # Initialize a new FindPatternNode node.
- #
- # @return [FindPatternNode] a new instance of FindPatternNode
- #
- # source://prism//lib/prism/node.rb#5930
- def initialize(source, node_id, location, flags, constant, left, requireds, right, opening_loc, closing_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#6046
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#5944
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#5949
- def child_nodes; end
-
- # def closing: () -> String?
- #
- # source://prism//lib/prism/node.rb#6025
- def closing; end
-
- # attr_reader closing_loc: Location?
- #
- # source://prism//lib/prism/node.rb#6007
- def closing_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#5964
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#5954
- def compact_child_nodes; end
-
- # attr_reader constant: Prism::node?
- #
- # source://prism//lib/prism/node.rb#5982
- def constant; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?constant: Prism::node?, ?left: Prism::node, ?requireds: Array[Prism::node], ?right: Prism::node, ?opening_loc: Location?, ?closing_loc: Location?) -> FindPatternNode
- #
- # source://prism//lib/prism/node.rb#5969
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), constant: T.unsafe(nil), left: T.unsafe(nil), requireds: T.unsafe(nil), right: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#5949
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, constant: Prism::node?, left: Prism::node, requireds: Array[Prism::node], right: Prism::node, opening_loc: Location?, closing_loc: Location? }
- #
- # source://prism//lib/prism/node.rb#5977
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#6030
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader left: Prism::node
- #
- # source://prism//lib/prism/node.rb#5985
- def left; end
-
- # def opening: () -> String?
- #
- # source://prism//lib/prism/node.rb#6020
- def opening; end
-
- # attr_reader opening_loc: Location?
- #
- # source://prism//lib/prism/node.rb#5994
- def opening_loc; end
-
- # attr_reader requireds: Array[Prism::node]
- #
- # source://prism//lib/prism/node.rb#5988
- def requireds; end
-
- # attr_reader right: Prism::node
- #
- # source://prism//lib/prism/node.rb#5991
- def right; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#6035
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#6040
- def type; end
- end
-end
-
-# Represents the use of the `..` or `...` operators to create flip flops.
-#
-# baz if foo .. bar
-# ^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#6062
-class Prism::FlipFlopNode < ::Prism::Node
- # Initialize a new FlipFlopNode node.
- #
- # @return [FlipFlopNode] a new instance of FlipFlopNode
- #
- # source://prism//lib/prism/node.rb#6064
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- left: T.nilable(Prism::Node),
- right: T.nilable(Prism::Node),
- operator_loc: Prism::Location
- ).void
- end
- def initialize(source, node_id, location, flags, left, right, operator_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#6150
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#6075
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#6080
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#6093
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#6085
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?left: Prism::node?, ?right: Prism::node?, ?operator_loc: Location) -> FlipFlopNode
- #
- # source://prism//lib/prism/node.rb#6098
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- left: T.nilable(Prism::Node),
- right: T.nilable(Prism::Node),
- operator_loc: Prism::Location
- ).returns(Prism::FlipFlopNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), left: T.unsafe(nil), right: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#6080
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, left: Prism::node?, right: Prism::node?, operator_loc: Location }
- #
- # source://prism//lib/prism/node.rb#6106
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- # def exclude_end?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#6111
- sig { returns(T::Boolean) }
- def exclude_end?; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#6134
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader left: Prism::node?
- #
- # source://prism//lib/prism/node.rb#6116
- sig { returns(T.nilable(Prism::Node)) }
- def left; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#6129
- sig { returns(String) }
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#6122
- sig { returns(Prism::Location) }
- def operator_loc; end
-
- # attr_reader right: Prism::node?
- #
- # source://prism//lib/prism/node.rb#6119
- sig { returns(T.nilable(Prism::Node)) }
- def right; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#6139
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#6144
- def type; end
- end
-end
-
-# Represents a floating point number literal.
-#
-# 1.0
-# ^^^
-#
-# source://prism//lib/prism/node.rb#6163
-class Prism::FloatNode < ::Prism::Node
- # Initialize a new FloatNode node.
- #
- # @return [FloatNode] a new instance of FloatNode
- #
- # source://prism//lib/prism/node.rb#6165
- def initialize(source, node_id, location, flags, value); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#6226
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#6174
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#6179
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#6189
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#6184
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?value: Float) -> FloatNode
- #
- # source://prism//lib/prism/node.rb#6194
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#6179
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, value: Float }
- #
- # source://prism//lib/prism/node.rb#6202
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#6210
- sig { override.returns(String) }
- def inspect; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#6215
- sig { override.returns(Symbol) }
- def type; end
-
- # The value of the floating point number as a Float.
- #
- # source://prism//lib/prism/node.rb#6207
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#6220
- def type; end
- end
-end
-
-# Represents the use of the `for` keyword.
-#
-# for i in a end
-# ^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#6236
-class Prism::ForNode < ::Prism::Node
- # Initialize a new ForNode node.
- #
- # @return [ForNode] a new instance of ForNode
- #
- # source://prism//lib/prism/node.rb#6238
- def initialize(source, node_id, location, flags, index, collection, statements, for_keyword_loc, in_keyword_loc, do_keyword_loc, end_keyword_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#6392
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#6253
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#6258
- def child_nodes; end
-
- # The collection to iterate over.
- #
- # for i in a end
- # ^
- #
- # source://prism//lib/prism/node.rb#6299
- def collection; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#6272
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#6263
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?index: Prism::node, ?collection: Prism::node, ?statements: StatementsNode?, ?for_keyword_loc: Location, ?in_keyword_loc: Location, ?do_keyword_loc: Location?, ?end_keyword_loc: Location) -> ForNode
- #
- # source://prism//lib/prism/node.rb#6277
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), index: T.unsafe(nil), collection: T.unsafe(nil), statements: T.unsafe(nil), for_keyword_loc: T.unsafe(nil), in_keyword_loc: T.unsafe(nil), do_keyword_loc: T.unsafe(nil), end_keyword_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#6258
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, index: Prism::node, collection: Prism::node, statements: StatementsNode?, for_keyword_loc: Location, in_keyword_loc: Location, do_keyword_loc: Location?, end_keyword_loc: Location }
- #
- # source://prism//lib/prism/node.rb#6285
- def deconstruct_keys(keys); end
-
- # def do_keyword: () -> String?
- #
- # source://prism//lib/prism/node.rb#6366
- def do_keyword; end
-
- # The location of the `do` keyword, if present.
- #
- # for i in a do end
- # ^^
- #
- # source://prism//lib/prism/node.rb#6333
- def do_keyword_loc; end
-
- # def end_keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#6371
- def end_keyword; end
-
- # The location of the `end` keyword.
- #
- # for i in a end
- # ^^^
- #
- # source://prism//lib/prism/node.rb#6349
- def end_keyword_loc; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def for_keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#6356
- def for_keyword; end
-
- # The location of the `for` keyword.
- #
- # for i in a end
- # ^^^
- #
- # source://prism//lib/prism/node.rb#6313
- def for_keyword_loc; end
-
- # def in_keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#6361
- def in_keyword; end
-
- # The location of the `in` keyword.
- #
- # for i in a end
- # ^^
- #
- # source://prism//lib/prism/node.rb#6323
- def in_keyword_loc; end
-
- # The index expression for `for` loops.
- #
- # for i in a end
- # ^
- #
- # source://prism//lib/prism/node.rb#6293
- def index; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#6376
- sig { override.returns(String) }
- def inspect; end
-
- # Represents the body of statements to execute for each iteration of the loop.
- #
- # for i in a
- # foo(i)
- # ^^^^^^
- # end
- #
- # source://prism//lib/prism/node.rb#6307
- def statements; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#6381
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#6386
- def type; end
- end
-end
-
-# Represents forwarding all arguments to this method to another method.
-#
-# def foo(...)
-# bar(...)
-# ^^^
-# end
-#
-# source://prism//lib/prism/node.rb#6410
-class Prism::ForwardingArgumentsNode < ::Prism::Node
- # Initialize a new ForwardingArgumentsNode node.
- #
- # @return [ForwardingArgumentsNode] a new instance of ForwardingArgumentsNode
- #
- # source://prism//lib/prism/node.rb#6412
- def initialize(source, node_id, location, flags); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#6469
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#6420
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#6425
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#6435
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#6430
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer) -> ForwardingArgumentsNode
- #
- # source://prism//lib/prism/node.rb#6440
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#6425
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location }
- #
- # source://prism//lib/prism/node.rb#6448
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#6453
- sig { override.returns(String) }
- def inspect; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#6458
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#6463
- def type; end
- end
-end
-
-# Represents the use of the forwarding parameter in a method, block, or lambda declaration.
-#
-# def foo(...)
-# ^^^
-# end
-#
-# source://prism//lib/prism/node.rb#6479
-class Prism::ForwardingParameterNode < ::Prism::Node
- # Initialize a new ForwardingParameterNode node.
- #
- # @return [ForwardingParameterNode] a new instance of ForwardingParameterNode
- #
- # source://prism//lib/prism/node.rb#6481
- def initialize(source, node_id, location, flags); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#6538
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#6489
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#6494
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#6504
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#6499
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer) -> ForwardingParameterNode
- #
- # source://prism//lib/prism/node.rb#6509
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#6494
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location }
- #
- # source://prism//lib/prism/node.rb#6517
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#6522
- sig { override.returns(String) }
- def inspect; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#6527
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#6532
- def type; end
- end
-end
-
-# Represents the use of the `super` keyword without parentheses or arguments.
-#
-# super
-# ^^^^^
-#
-# source://prism//lib/prism/node.rb#6547
-class Prism::ForwardingSuperNode < ::Prism::Node
- # Initialize a new ForwardingSuperNode node.
- #
- # @return [ForwardingSuperNode] a new instance of ForwardingSuperNode
- #
- # source://prism//lib/prism/node.rb#6549
- def initialize(source, node_id, location, flags, block); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#6612
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#6558
- def accept(visitor); end
-
- # attr_reader block: BlockNode?
- #
- # source://prism//lib/prism/node.rb#6593
- def block; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#6563
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#6575
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#6568
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?block: BlockNode?) -> ForwardingSuperNode
- #
- # source://prism//lib/prism/node.rb#6580
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), block: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#6563
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, block: BlockNode? }
- #
- # source://prism//lib/prism/node.rb#6588
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#6596
- sig { override.returns(String) }
- def inspect; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#6601
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#6606
- def type; end
- end
-end
-
-# Represents the use of the `&&=` operator for assignment to a global variable.
-#
-# $target &&= value
-# ^^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#6622
-class Prism::GlobalVariableAndWriteNode < ::Prism::Node
- # Initialize a new GlobalVariableAndWriteNode node.
- #
- # @return [GlobalVariableAndWriteNode] a new instance of GlobalVariableAndWriteNode
- #
- # source://prism//lib/prism/node.rb#6624
- def initialize(source, node_id, location, flags, name, name_loc, operator_loc, value); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#6710
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#6636
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#6641
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#6651
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#6646
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol, ?name_loc: Location, ?operator_loc: Location, ?value: Prism::node) -> GlobalVariableAndWriteNode
- #
- # source://prism//lib/prism/node.rb#6656
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#6641
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol, name_loc: Location, operator_loc: Location, value: Prism::node }
- #
- # source://prism//lib/prism/node.rb#6664
- def deconstruct_keys(keys); end
-
- # source://prism//lib/prism/desugar_compiler.rb#200
- def desugar; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#6694
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#6669
- def name; end
-
- # attr_reader name_loc: Location
- #
- # source://prism//lib/prism/node.rb#6672
- def name_loc; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#6689
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#6679
- def operator_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#6699
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#6686
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#6704
- def type; end
- end
-end
-
-# Represents assigning to a global variable using an operator that isn't `=`.
-#
-# $target += value
-# ^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#6723
-class Prism::GlobalVariableOperatorWriteNode < ::Prism::Node
- # Initialize a new GlobalVariableOperatorWriteNode node.
- #
- # @return [GlobalVariableOperatorWriteNode] a new instance of GlobalVariableOperatorWriteNode
- #
- # source://prism//lib/prism/node.rb#6725
- def initialize(source, node_id, location, flags, name, name_loc, binary_operator_loc, value, binary_operator); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#6810
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#6738
- def accept(visitor); end
-
- # attr_reader binary_operator: Symbol
- #
- # source://prism//lib/prism/node.rb#6791
- def binary_operator; end
-
- # attr_reader binary_operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#6781
- def binary_operator_loc; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#6743
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#6753
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#6748
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol, ?name_loc: Location, ?binary_operator_loc: Location, ?value: Prism::node, ?binary_operator: Symbol) -> GlobalVariableOperatorWriteNode
- #
- # source://prism//lib/prism/node.rb#6758
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), binary_operator_loc: T.unsafe(nil), value: T.unsafe(nil), binary_operator: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#6743
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol, name_loc: Location, binary_operator_loc: Location, value: Prism::node, binary_operator: Symbol }
- #
- # source://prism//lib/prism/node.rb#6766
- def deconstruct_keys(keys); end
-
- # source://prism//lib/prism/desugar_compiler.rb#212
- def desugar; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#6794
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#6771
- def name; end
-
- # attr_reader name_loc: Location
- #
- # source://prism//lib/prism/node.rb#6774
- def name_loc; end
-
- # Returns the binary operator used to modify the receiver. This method is
- # deprecated in favor of #binary_operator.
- #
- # source://prism//lib/prism/node_ext.rb#403
- def operator; end
-
- # Returns the location of the binary operator used to modify the receiver.
- # This method is deprecated in favor of #binary_operator_loc.
- #
- # source://prism//lib/prism/node_ext.rb#410
- def operator_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#6799
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#6788
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#6804
- def type; end
- end
-end
-
-# Represents the use of the `||=` operator for assignment to a global variable.
-#
-# $target ||= value
-# ^^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#6824
-class Prism::GlobalVariableOrWriteNode < ::Prism::Node
- # Initialize a new GlobalVariableOrWriteNode node.
- #
- # @return [GlobalVariableOrWriteNode] a new instance of GlobalVariableOrWriteNode
- #
- # source://prism//lib/prism/node.rb#6826
- def initialize(source, node_id, location, flags, name, name_loc, operator_loc, value); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#6912
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#6838
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#6843
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#6853
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#6848
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol, ?name_loc: Location, ?operator_loc: Location, ?value: Prism::node) -> GlobalVariableOrWriteNode
- #
- # source://prism//lib/prism/node.rb#6858
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#6843
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol, name_loc: Location, operator_loc: Location, value: Prism::node }
- #
- # source://prism//lib/prism/node.rb#6866
- def deconstruct_keys(keys); end
-
- # source://prism//lib/prism/desugar_compiler.rb#206
- def desugar; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#6896
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#6871
- def name; end
-
- # attr_reader name_loc: Location
- #
- # source://prism//lib/prism/node.rb#6874
- def name_loc; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#6891
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#6881
- def operator_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#6901
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#6888
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#6906
- def type; end
- end
-end
-
-# Represents referencing a global variable.
-#
-# $foo
-# ^^^^
-#
-# source://prism//lib/prism/node.rb#6925
-class Prism::GlobalVariableReadNode < ::Prism::Node
- # Initialize a new GlobalVariableReadNode node.
- #
- # @return [GlobalVariableReadNode] a new instance of GlobalVariableReadNode
- #
- # source://prism//lib/prism/node.rb#6927
- def initialize(source, node_id, location, flags, name); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#6992
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#6936
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#6941
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#6951
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#6946
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol) -> GlobalVariableReadNode
- #
- # source://prism//lib/prism/node.rb#6956
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#6941
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol }
- #
- # source://prism//lib/prism/node.rb#6964
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#6976
- sig { override.returns(String) }
- def inspect; end
-
- # The name of the global variable, which is a `$` followed by an [identifier](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#identifier). Alternatively, it can be one of the special global variables designated by a symbol.
- #
- # $foo # name `:$foo`
- #
- # $_Test # name `:$_Test`
- #
- # source://prism//lib/prism/node.rb#6973
- def name; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#6981
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#6986
- def type; end
- end
-end
-
-# Represents writing to a global variable in a context that doesn't have an explicit value.
-#
-# $foo, $bar = baz
-# ^^^^ ^^^^
-#
-# source://prism//lib/prism/node.rb#7002
-class Prism::GlobalVariableTargetNode < ::Prism::Node
- # Initialize a new GlobalVariableTargetNode node.
- #
- # @return [GlobalVariableTargetNode] a new instance of GlobalVariableTargetNode
- #
- # source://prism//lib/prism/node.rb#7004
- def initialize(source, node_id, location, flags, name); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#7065
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#7013
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#7018
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#7028
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#7023
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol) -> GlobalVariableTargetNode
- #
- # source://prism//lib/prism/node.rb#7033
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#7018
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol }
- #
- # source://prism//lib/prism/node.rb#7041
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#7049
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#7046
- def name; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#7054
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#7059
- def type; end
- end
-end
-
-# Represents writing to a global variable.
-#
-# $foo = 1
-# ^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#7075
-class Prism::GlobalVariableWriteNode < ::Prism::Node
- # Initialize a new GlobalVariableWriteNode node.
- #
- # @return [GlobalVariableWriteNode] a new instance of GlobalVariableWriteNode
- #
- # source://prism//lib/prism/node.rb#7077
- def initialize(source, node_id, location, flags, name, name_loc, value, operator_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#7179
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#7089
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#7094
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#7104
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#7099
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol, ?name_loc: Location, ?value: Prism::node, ?operator_loc: Location) -> GlobalVariableWriteNode
- #
- # source://prism//lib/prism/node.rb#7109
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), value: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#7094
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol, name_loc: Location, value: Prism::node, operator_loc: Location }
- #
- # source://prism//lib/prism/node.rb#7117
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#7163
- sig { override.returns(String) }
- def inspect; end
-
- # The name of the global variable, which is a `$` followed by an [identifier](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#identifier). Alternatively, it can be one of the special global variables designated by a symbol.
- #
- # $foo = :bar # name `:$foo`
- #
- # $_Test = 123 # name `:$_Test`
- #
- # source://prism//lib/prism/node.rb#7126
- def name; end
-
- # The location of the global variable's name.
- #
- # $foo = :bar
- # ^^^^
- #
- # source://prism//lib/prism/node.rb#7132
- def name_loc; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#7158
- def operator; end
-
- # The location of the `=` operator.
- #
- # $foo = :bar
- # ^
- #
- # source://prism//lib/prism/node.rb#7151
- def operator_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#7168
- sig { override.returns(Symbol) }
- def type; end
-
- # The value to write to the global variable. It can be any [non-void expression](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#non-void-expression).
- #
- # $foo = :bar
- # ^^^^
- #
- # $-xyz = 123
- # ^^^
- #
- # source://prism//lib/prism/node.rb#7145
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#7173
- def type; end
- end
-end
-
-# Represents a hash literal.
-#
-# { a => b }
-# ^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#7192
-class Prism::HashNode < ::Prism::Node
- # Initialize a new HashNode node.
- #
- # @return [HashNode] a new instance of HashNode
- #
- # source://prism//lib/prism/node.rb#7194
- def initialize(source, node_id, location, flags, opening_loc, elements, closing_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#7293
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#7205
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#7210
- def child_nodes; end
-
- # def closing: () -> String
- #
- # source://prism//lib/prism/node.rb#7272
- def closing; end
-
- # The location of the closing brace.
- #
- # { a => b }
- # ^
- #
- # source://prism//lib/prism/node.rb#7260
- def closing_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#7220
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#7215
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?opening_loc: Location, ?elements: Array[AssocNode | AssocSplatNode], ?closing_loc: Location) -> HashNode
- #
- # source://prism//lib/prism/node.rb#7225
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), opening_loc: T.unsafe(nil), elements: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#7210
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, opening_loc: Location, elements: Array[AssocNode | AssocSplatNode], closing_loc: Location }
- #
- # source://prism//lib/prism/node.rb#7233
- def deconstruct_keys(keys); end
-
- # The elements of the hash. These can be either `AssocNode`s or `AssocSplatNode`s.
- #
- # { a: b }
- # ^^^^
- #
- # { **foo }
- # ^^^^^
- #
- # source://prism//lib/prism/node.rb#7254
- def elements; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#7277
- sig { override.returns(String) }
- def inspect; end
-
- # def opening: () -> String
- #
- # source://prism//lib/prism/node.rb#7267
- def opening; end
-
- # The location of the opening brace.
- #
- # { a => b }
- # ^
- #
- # source://prism//lib/prism/node.rb#7241
- def opening_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#7282
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#7287
- def type; end
- end
-end
-
-# Represents a hash pattern in pattern matching.
-#
-# foo => { a: 1, b: 2 }
-# ^^^^^^^^^^^^^^
-#
-# foo => { a: 1, b: 2, **c }
-# ^^^^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#7309
-class Prism::HashPatternNode < ::Prism::Node
- # Initialize a new HashPatternNode node.
- #
- # @return [HashPatternNode] a new instance of HashPatternNode
- #
- # source://prism//lib/prism/node.rb#7311
- def initialize(source, node_id, location, flags, constant, elements, rest, opening_loc, closing_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#7422
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#7324
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#7329
- def child_nodes; end
-
- # def closing: () -> String?
- #
- # source://prism//lib/prism/node.rb#7401
- def closing; end
-
- # attr_reader closing_loc: Location?
- #
- # source://prism//lib/prism/node.rb#7383
- def closing_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#7343
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#7334
- def compact_child_nodes; end
-
- # attr_reader constant: Prism::node?
- #
- # source://prism//lib/prism/node.rb#7361
- def constant; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?constant: Prism::node?, ?elements: Array[AssocNode], ?rest: AssocSplatNode | NoKeywordsParameterNode | nil, ?opening_loc: Location?, ?closing_loc: Location?) -> HashPatternNode
- #
- # source://prism//lib/prism/node.rb#7348
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), constant: T.unsafe(nil), elements: T.unsafe(nil), rest: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#7329
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, constant: Prism::node?, elements: Array[AssocNode], rest: AssocSplatNode | NoKeywordsParameterNode | nil, opening_loc: Location?, closing_loc: Location? }
- #
- # source://prism//lib/prism/node.rb#7356
- def deconstruct_keys(keys); end
-
- # attr_reader elements: Array[AssocNode]
- #
- # source://prism//lib/prism/node.rb#7364
- def elements; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#7406
- sig { override.returns(String) }
- def inspect; end
-
- # def opening: () -> String?
- #
- # source://prism//lib/prism/node.rb#7396
- def opening; end
-
- # attr_reader opening_loc: Location?
- #
- # source://prism//lib/prism/node.rb#7370
- def opening_loc; end
-
- # attr_reader rest: AssocSplatNode | NoKeywordsParameterNode | nil
- #
- # source://prism//lib/prism/node.rb#7367
- def rest; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#7411
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#7416
- def type; end
- end
-end
-
-# source://prism//lib/prism/node_ext.rb#52
-module Prism::HeredocQuery
- # Returns true if this node was represented as a heredoc in the source code.
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node_ext.rb#54
- def heredoc?; end
-end
-
-# Represents the use of the `if` keyword, either in the block form or the modifier form, or a ternary expression.
-#
-# bar if foo
-# ^^^^^^^^^^
-#
-# if foo then bar end
-# ^^^^^^^^^^^^^^^^^^^
-#
-# foo ? bar : baz
-# ^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#7443
-class Prism::IfNode < ::Prism::Node
- # Initialize a new IfNode node.
- #
- # @return [IfNode] a new instance of IfNode
- #
- # source://prism//lib/prism/node.rb#7445
- def initialize(source, node_id, location, flags, if_keyword_loc, predicate, then_keyword_loc, statements, subsequent, end_keyword_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#7621
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#7459
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#7464
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#7478
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#7469
- def compact_child_nodes; end
-
- # Returns the subsequent if/elsif/else clause of the if node. This method is
- # deprecated in favor of #subsequent.
- #
- # source://prism//lib/prism/node_ext.rb#485
- def consequent; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?if_keyword_loc: Location?, ?predicate: Prism::node, ?then_keyword_loc: Location?, ?statements: StatementsNode?, ?subsequent: ElseNode | IfNode | nil, ?end_keyword_loc: Location?) -> IfNode
- #
- # source://prism//lib/prism/node.rb#7483
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), if_keyword_loc: T.unsafe(nil), predicate: T.unsafe(nil), then_keyword_loc: T.unsafe(nil), statements: T.unsafe(nil), subsequent: T.unsafe(nil), end_keyword_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#7464
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, if_keyword_loc: Location?, predicate: Prism::node, then_keyword_loc: Location?, statements: StatementsNode?, subsequent: ElseNode | IfNode | nil, end_keyword_loc: Location? }
- #
- # source://prism//lib/prism/node.rb#7491
- def deconstruct_keys(keys); end
-
- # def end_keyword: () -> String?
- #
- # source://prism//lib/prism/node.rb#7600
- def end_keyword; end
-
- # The location of the `end` keyword if present, `nil` otherwise.
- #
- # if foo
- # bar
- # end
- # ^^^
- #
- # source://prism//lib/prism/node.rb#7577
- def end_keyword_loc; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def if_keyword: () -> String?
- #
- # source://prism//lib/prism/node.rb#7590
- def if_keyword; end
-
- # The location of the `if` keyword if present.
- #
- # bar if foo
- # ^^
- #
- # The `if_keyword_loc` field will be `nil` when the `IfNode` represents a ternary expression.
- #
- # source://prism//lib/prism/node.rb#7501
- def if_keyword_loc; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#7605
- sig { override.returns(String) }
- def inspect; end
-
- # source://prism//lib/prism/parse_result/newlines.rb#91
- def newline_flag!(lines); end
-
- # The node for the condition the `IfNode` is testing.
- #
- # if foo
- # ^^^
- # bar
- # end
- #
- # bar if foo
- # ^^^
- #
- # foo ? bar : baz
- # ^^^
- #
- # source://prism//lib/prism/node.rb#7525
- def predicate; end
-
- # Represents the body of statements that will be executed when the predicate is evaluated as truthy. Will be `nil` when no body is provided.
- #
- # if foo
- # bar
- # ^^^
- # baz
- # ^^^
- # end
- #
- # source://prism//lib/prism/node.rb#7554
- def statements; end
-
- # Represents an `ElseNode` or an `IfNode` when there is an `else` or an `elsif` in the `if` statement.
- #
- # if foo
- # bar
- # elsif baz
- # ^^^^^^^^^
- # qux
- # ^^^
- # end
- # ^^^
- #
- # if foo then bar else baz end
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/node.rb#7569
- def subsequent; end
-
- # def then_keyword: () -> String?
- #
- # source://prism//lib/prism/node.rb#7595
- def then_keyword; end
-
- # The location of the `then` keyword (if present) or the `?` in a ternary expression, `nil` otherwise.
- #
- # if foo then bar end
- # ^^^^
- #
- # a ? b : c
- # ^
- #
- # source://prism//lib/prism/node.rb#7534
- def then_keyword_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#7610
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#7615
- def type; end
- end
-end
-
-# Represents an imaginary number literal.
-#
-# 1.0i
-# ^^^^
-#
-# source://prism//lib/prism/node.rb#7636
-class Prism::ImaginaryNode < ::Prism::Node
- # Initialize a new ImaginaryNode node.
- #
- # @return [ImaginaryNode] a new instance of ImaginaryNode
- #
- # source://prism//lib/prism/node.rb#7638
- def initialize(source, node_id, location, flags, numeric); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#7699
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#7647
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#7652
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#7662
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#7657
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?numeric: FloatNode | IntegerNode | RationalNode) -> ImaginaryNode
- #
- # source://prism//lib/prism/node.rb#7667
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), numeric: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#7652
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, numeric: FloatNode | IntegerNode | RationalNode }
- #
- # source://prism//lib/prism/node.rb#7675
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#7683
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader numeric: FloatNode | IntegerNode | RationalNode
- #
- # source://prism//lib/prism/node.rb#7680
- def numeric; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#7688
- sig { override.returns(Symbol) }
- def type; end
-
- # Returns the value of the node as a Ruby Complex.
- #
- # source://prism//lib/prism/node_ext.rb#107
- sig { returns(Complex) }
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#7693
- def type; end
- end
-end
-
-# Represents a node that is implicitly being added to the tree but doesn't correspond directly to a node in the source.
-#
-# { foo: }
-# ^^^^
-#
-# { Foo: }
-# ^^^^
-#
-# foo in { bar: }
-# ^^^^
-#
-# source://prism//lib/prism/node.rb#7715
-class Prism::ImplicitNode < ::Prism::Node
- # Initialize a new ImplicitNode node.
- #
- # @return [ImplicitNode] a new instance of ImplicitNode
- #
- # source://prism//lib/prism/node.rb#7717
- def initialize(source, node_id, location, flags, value); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#7778
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#7726
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#7731
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#7741
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#7736
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?value: Prism::node) -> ImplicitNode
- #
- # source://prism//lib/prism/node.rb#7746
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#7731
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, value: Prism::node }
- #
- # source://prism//lib/prism/node.rb#7754
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#7762
- sig { override.returns(String) }
- def inspect; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#7767
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#7759
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#7772
- def type; end
- end
-end
-
-# Represents using a trailing comma to indicate an implicit rest parameter.
-#
-# foo { |bar,| }
-# ^
-#
-# foo in [bar,]
-# ^
-#
-# for foo, in bar do end
-# ^
-#
-# foo, = bar
-# ^
-#
-# source://prism//lib/prism/node.rb#7797
-class Prism::ImplicitRestNode < ::Prism::Node
- # Initialize a new ImplicitRestNode node.
- #
- # @return [ImplicitRestNode] a new instance of ImplicitRestNode
- #
- # source://prism//lib/prism/node.rb#7799
- def initialize(source, node_id, location, flags); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#7856
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#7807
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#7812
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#7822
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#7817
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer) -> ImplicitRestNode
- #
- # source://prism//lib/prism/node.rb#7827
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#7812
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location }
- #
- # source://prism//lib/prism/node.rb#7835
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#7840
- sig { override.returns(String) }
- def inspect; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#7845
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#7850
- def type; end
- end
-end
-
-# Represents the use of the `in` keyword in a case statement.
-#
-# case a; in b then c end
-# ^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#7865
-class Prism::InNode < ::Prism::Node
- # Initialize a new InNode node.
- #
- # @return [InNode] a new instance of InNode
- #
- # source://prism//lib/prism/node.rb#7867
- def initialize(source, node_id, location, flags, pattern, statements, in_loc, then_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#7967
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#7879
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#7884
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#7897
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#7889
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?pattern: Prism::node, ?statements: StatementsNode?, ?in_loc: Location, ?then_loc: Location?) -> InNode
- #
- # source://prism//lib/prism/node.rb#7902
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), pattern: T.unsafe(nil), statements: T.unsafe(nil), in_loc: T.unsafe(nil), then_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#7884
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, pattern: Prism::node, statements: StatementsNode?, in_loc: Location, then_loc: Location? }
- #
- # source://prism//lib/prism/node.rb#7910
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def in: () -> String
- #
- # source://prism//lib/prism/node.rb#7941
- def in; end
-
- # attr_reader in_loc: Location
- #
- # source://prism//lib/prism/node.rb#7921
- def in_loc; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#7951
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader pattern: Prism::node
- #
- # source://prism//lib/prism/node.rb#7915
- def pattern; end
-
- # attr_reader statements: StatementsNode?
- #
- # source://prism//lib/prism/node.rb#7918
- def statements; end
-
- # def then: () -> String?
- #
- # source://prism//lib/prism/node.rb#7946
- def then; end
-
- # attr_reader then_loc: Location?
- #
- # source://prism//lib/prism/node.rb#7928
- def then_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#7956
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#7961
- def type; end
- end
-end
-
-# Represents the use of the `&&=` operator on a call to the `[]` method.
-#
-# foo.bar[baz] &&= value
-# ^^^^^^^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#7980
-class Prism::IndexAndWriteNode < ::Prism::Node
- # Initialize a new IndexAndWriteNode node.
- #
- # @return [IndexAndWriteNode] a new instance of IndexAndWriteNode
- #
- # source://prism//lib/prism/node.rb#7982
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- receiver: T.nilable(Prism::Node),
- call_operator_loc: T.nilable(Prism::Location),
- opening_loc: Prism::Location,
- arguments: T.nilable(Prism::ArgumentsNode),
- closing_loc: Prism::Location,
- block: T.nilable(Prism::Node),
- operator_loc: Prism::Location,
- value: Prism::Node
- ).void
- end
- def initialize(source, node_id, location, flags, receiver, call_operator_loc, opening_loc, arguments, closing_loc, block, operator_loc, value); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#8138
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#7998
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # attr_reader arguments: ArgumentsNode?
- #
- # source://prism//lib/prism/node.rb#8079
- sig { returns(T.nilable(Prism::ArgumentsNode)) }
- def arguments; end
-
- # def attribute_write?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#8046
- sig { returns(T::Boolean) }
- def attribute_write?; end
-
- # attr_reader block: Prism::node?
- #
- # source://prism//lib/prism/node.rb#8089
- sig { returns(T.nilable(Prism::Node)) }
- def block; end
-
- # def call_operator: () -> String?
- #
- # source://prism//lib/prism/node.rb#8102
- sig { returns(T.nilable(String)) }
- def call_operator; end
-
- # attr_reader call_operator_loc: Location?
- #
- # source://prism//lib/prism/node.rb#8059
- sig { returns(T.nilable(Prism::Location)) }
- def call_operator_loc; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#8003
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def closing: () -> String
- #
- # source://prism//lib/prism/node.rb#8112
- sig { returns(String) }
- def closing; end
-
- # attr_reader closing_loc: Location
- #
- # source://prism//lib/prism/node.rb#8082
- sig { returns(Prism::Location) }
- def closing_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#8018
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#8008
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?receiver: Prism::node?, ?call_operator_loc: Location?, ?opening_loc: Location, ?arguments: ArgumentsNode?, ?closing_loc: Location, ?block: Prism::node?, ?operator_loc: Location, ?value: Prism::node) -> IndexAndWriteNode
- #
- # source://prism//lib/prism/node.rb#8023
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- receiver: T.nilable(Prism::Node),
- call_operator_loc: T.nilable(Prism::Location),
- opening_loc: Prism::Location,
- arguments: T.nilable(Prism::ArgumentsNode),
- closing_loc: Prism::Location,
- block: T.nilable(Prism::Node),
- operator_loc: Prism::Location,
- value: Prism::Node
- ).returns(Prism::IndexAndWriteNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), receiver: T.unsafe(nil), call_operator_loc: T.unsafe(nil), opening_loc: T.unsafe(nil), arguments: T.unsafe(nil), closing_loc: T.unsafe(nil), block: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#8003
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, receiver: Prism::node?, call_operator_loc: Location?, opening_loc: Location, arguments: ArgumentsNode?, closing_loc: Location, block: Prism::node?, operator_loc: Location, value: Prism::node }
- #
- # source://prism//lib/prism/node.rb#8031
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def ignore_visibility?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#8051
- sig { returns(T::Boolean) }
- def ignore_visibility?; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#8122
- sig { override.returns(String) }
- def inspect; end
-
- # def opening: () -> String
- #
- # source://prism//lib/prism/node.rb#8107
- sig { returns(String) }
- def opening; end
-
- # attr_reader opening_loc: Location
- #
- # source://prism//lib/prism/node.rb#8072
- sig { returns(Prism::Location) }
- def opening_loc; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#8117
- sig { returns(String) }
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#8092
- sig { returns(Prism::Location) }
- def operator_loc; end
-
- # attr_reader receiver: Prism::node?
- #
- # source://prism//lib/prism/node.rb#8056
- sig { returns(T.nilable(Prism::Node)) }
- def receiver; end
-
- # def safe_navigation?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#8036
- sig { returns(T::Boolean) }
- def safe_navigation?; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#8127
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#8099
- sig { returns(Prism::Node) }
- def value; end
-
- # def variable_call?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#8041
- sig { returns(T::Boolean) }
- def variable_call?; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#8132
- def type; end
- end
-end
-
-# Represents the use of an assignment operator on a call to `[]`.
-#
-# foo.bar[baz] += value
-# ^^^^^^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#8156
-class Prism::IndexOperatorWriteNode < ::Prism::Node
- # Initialize a new IndexOperatorWriteNode node.
- #
- # @return [IndexOperatorWriteNode] a new instance of IndexOperatorWriteNode
- #
- # source://prism//lib/prism/node.rb#8158
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- receiver: T.nilable(Prism::Node),
- call_operator_loc: T.nilable(Prism::Location),
- opening_loc: Prism::Location,
- arguments: T.nilable(Prism::ArgumentsNode),
- closing_loc: Prism::Location,
- block: T.nilable(Prism::Node),
- binary_operator: Symbol,
- binary_operator_loc: Prism::Location,
- value: Prism::Node
- ).void
- end
- def initialize(source, node_id, location, flags, receiver, call_operator_loc, opening_loc, arguments, closing_loc, block, binary_operator, binary_operator_loc, value); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#8313
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#8175
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # attr_reader arguments: ArgumentsNode?
- #
- # source://prism//lib/prism/node.rb#8256
- sig { returns(T.nilable(Prism::ArgumentsNode)) }
- def arguments; end
-
- # def attribute_write?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#8223
- sig { returns(T::Boolean) }
- def attribute_write?; end
-
- # attr_reader binary_operator: Symbol
- #
- # source://prism//lib/prism/node.rb#8269
- sig { returns(Symbol) }
- def binary_operator; end
-
- # attr_reader binary_operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#8272
- sig { returns(Prism::Location) }
- def binary_operator_loc; end
-
- # attr_reader block: Prism::node?
- #
- # source://prism//lib/prism/node.rb#8266
- sig { returns(T.nilable(Prism::Node)) }
- def block; end
-
- # def call_operator: () -> String?
- #
- # source://prism//lib/prism/node.rb#8282
- sig { returns(T.nilable(String)) }
- def call_operator; end
-
- # attr_reader call_operator_loc: Location?
- #
- # source://prism//lib/prism/node.rb#8236
- sig { returns(T.nilable(Prism::Location)) }
- def call_operator_loc; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#8180
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def closing: () -> String
- #
- # source://prism//lib/prism/node.rb#8292
- sig { returns(String) }
- def closing; end
-
- # attr_reader closing_loc: Location
- #
- # source://prism//lib/prism/node.rb#8259
- sig { returns(Prism::Location) }
- def closing_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#8195
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#8185
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?receiver: Prism::node?, ?call_operator_loc: Location?, ?opening_loc: Location, ?arguments: ArgumentsNode?, ?closing_loc: Location, ?block: Prism::node?, ?binary_operator: Symbol, ?binary_operator_loc: Location, ?value: Prism::node) -> IndexOperatorWriteNode
- #
- # source://prism//lib/prism/node.rb#8200
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- receiver: T.nilable(Prism::Node),
- call_operator_loc: T.nilable(Prism::Location),
- opening_loc: Prism::Location,
- arguments: T.nilable(Prism::ArgumentsNode),
- closing_loc: Prism::Location,
- block: T.nilable(Prism::Node),
- binary_operator: Symbol,
- binary_operator_loc: Prism::Location,
- value: Prism::Node
- ).returns(Prism::IndexOperatorWriteNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), receiver: T.unsafe(nil), call_operator_loc: T.unsafe(nil), opening_loc: T.unsafe(nil), arguments: T.unsafe(nil), closing_loc: T.unsafe(nil), block: T.unsafe(nil), binary_operator: T.unsafe(nil), binary_operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#8180
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, receiver: Prism::node?, call_operator_loc: Location?, opening_loc: Location, arguments: ArgumentsNode?, closing_loc: Location, block: Prism::node?, binary_operator: Symbol, binary_operator_loc: Location, value: Prism::node }
- #
- # source://prism//lib/prism/node.rb#8208
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def ignore_visibility?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#8228
- sig { returns(T::Boolean) }
- def ignore_visibility?; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#8297
- sig { override.returns(String) }
- def inspect; end
-
- # def opening: () -> String
- #
- # source://prism//lib/prism/node.rb#8287
- sig { returns(String) }
- def opening; end
-
- # attr_reader opening_loc: Location
- #
- # source://prism//lib/prism/node.rb#8249
- sig { returns(Prism::Location) }
- def opening_loc; end
-
- # Returns the binary operator used to modify the receiver. This method is
- # deprecated in favor of #binary_operator.
- #
- # source://prism//lib/prism/node_ext.rb#419
- def operator; end
-
- # Returns the location of the binary operator used to modify the receiver.
- # This method is deprecated in favor of #binary_operator_loc.
- #
- # source://prism//lib/prism/node_ext.rb#426
- def operator_loc; end
-
- # attr_reader receiver: Prism::node?
- #
- # source://prism//lib/prism/node.rb#8233
- sig { returns(T.nilable(Prism::Node)) }
- def receiver; end
-
- # def safe_navigation?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#8213
- sig { returns(T::Boolean) }
- def safe_navigation?; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#8302
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#8279
- sig { returns(Prism::Node) }
- def value; end
-
- # def variable_call?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#8218
- sig { returns(T::Boolean) }
- def variable_call?; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#8307
- def type; end
- end
-end
-
-# Represents the use of the `||=` operator on a call to `[]`.
-#
-# foo.bar[baz] ||= value
-# ^^^^^^^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#8332
-class Prism::IndexOrWriteNode < ::Prism::Node
- # Initialize a new IndexOrWriteNode node.
- #
- # @return [IndexOrWriteNode] a new instance of IndexOrWriteNode
- #
- # source://prism//lib/prism/node.rb#8334
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- receiver: T.nilable(Prism::Node),
- call_operator_loc: T.nilable(Prism::Location),
- opening_loc: Prism::Location,
- arguments: T.nilable(Prism::ArgumentsNode),
- closing_loc: Prism::Location,
- block: T.nilable(Prism::Node),
- operator_loc: Prism::Location,
- value: Prism::Node
- ).void
- end
- def initialize(source, node_id, location, flags, receiver, call_operator_loc, opening_loc, arguments, closing_loc, block, operator_loc, value); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#8490
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#8350
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # attr_reader arguments: ArgumentsNode?
- #
- # source://prism//lib/prism/node.rb#8431
- sig { returns(T.nilable(Prism::ArgumentsNode)) }
- def arguments; end
-
- # def attribute_write?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#8398
- sig { returns(T::Boolean) }
- def attribute_write?; end
-
- # attr_reader block: Prism::node?
- #
- # source://prism//lib/prism/node.rb#8441
- sig { returns(T.nilable(Prism::Node)) }
- def block; end
-
- # def call_operator: () -> String?
- #
- # source://prism//lib/prism/node.rb#8454
- sig { returns(T.nilable(String)) }
- def call_operator; end
-
- # attr_reader call_operator_loc: Location?
- #
- # source://prism//lib/prism/node.rb#8411
- sig { returns(T.nilable(Prism::Location)) }
- def call_operator_loc; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#8355
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def closing: () -> String
- #
- # source://prism//lib/prism/node.rb#8464
- sig { returns(String) }
- def closing; end
-
- # attr_reader closing_loc: Location
- #
- # source://prism//lib/prism/node.rb#8434
- sig { returns(Prism::Location) }
- def closing_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#8370
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#8360
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?receiver: Prism::node?, ?call_operator_loc: Location?, ?opening_loc: Location, ?arguments: ArgumentsNode?, ?closing_loc: Location, ?block: Prism::node?, ?operator_loc: Location, ?value: Prism::node) -> IndexOrWriteNode
- #
- # source://prism//lib/prism/node.rb#8375
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- receiver: T.nilable(Prism::Node),
- call_operator_loc: T.nilable(Prism::Location),
- opening_loc: Prism::Location,
- arguments: T.nilable(Prism::ArgumentsNode),
- closing_loc: Prism::Location,
- block: T.nilable(Prism::Node),
- operator_loc: Prism::Location,
- value: Prism::Node
- ).returns(Prism::IndexOrWriteNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), receiver: T.unsafe(nil), call_operator_loc: T.unsafe(nil), opening_loc: T.unsafe(nil), arguments: T.unsafe(nil), closing_loc: T.unsafe(nil), block: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#8355
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, receiver: Prism::node?, call_operator_loc: Location?, opening_loc: Location, arguments: ArgumentsNode?, closing_loc: Location, block: Prism::node?, operator_loc: Location, value: Prism::node }
- #
- # source://prism//lib/prism/node.rb#8383
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def ignore_visibility?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#8403
- sig { returns(T::Boolean) }
- def ignore_visibility?; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#8474
- sig { override.returns(String) }
- def inspect; end
-
- # def opening: () -> String
- #
- # source://prism//lib/prism/node.rb#8459
- sig { returns(String) }
- def opening; end
-
- # attr_reader opening_loc: Location
- #
- # source://prism//lib/prism/node.rb#8424
- sig { returns(Prism::Location) }
- def opening_loc; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#8469
- sig { returns(String) }
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#8444
- sig { returns(Prism::Location) }
- def operator_loc; end
-
- # attr_reader receiver: Prism::node?
- #
- # source://prism//lib/prism/node.rb#8408
- sig { returns(T.nilable(Prism::Node)) }
- def receiver; end
-
- # def safe_navigation?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#8388
- sig { returns(T::Boolean) }
- def safe_navigation?; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#8479
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#8451
- sig { returns(Prism::Node) }
- def value; end
-
- # def variable_call?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#8393
- sig { returns(T::Boolean) }
- def variable_call?; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#8484
- def type; end
- end
-end
-
-# Represents assigning to an index.
-#
-# foo[bar], = 1
-# ^^^^^^^^
-#
-# begin
-# rescue => foo[bar]
-# ^^^^^^^^
-# end
-#
-# for foo[bar] in baz do end
-# ^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#8516
-class Prism::IndexTargetNode < ::Prism::Node
- # Initialize a new IndexTargetNode node.
- #
- # @return [IndexTargetNode] a new instance of IndexTargetNode
- #
- # source://prism//lib/prism/node.rb#8518
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- receiver: Prism::Node,
- opening_loc: Prism::Location,
- arguments: T.nilable(Prism::ArgumentsNode),
- closing_loc: Prism::Location,
- block: T.nilable(Prism::Node)
- ).void
- end
- def initialize(source, node_id, location, flags, receiver, opening_loc, arguments, closing_loc, block); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#8637
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#8531
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # attr_reader arguments: ArgumentsNode?
- #
- # source://prism//lib/prism/node.rb#8598
- sig { returns(T.nilable(Prism::ArgumentsNode)) }
- def arguments; end
-
- # def attribute_write?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#8578
- sig { returns(T::Boolean) }
- def attribute_write?; end
-
- # attr_reader block: Prism::node?
- #
- # source://prism//lib/prism/node.rb#8608
- sig { returns(T.nilable(Prism::Node)) }
- def block; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#8536
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def closing: () -> String
- #
- # source://prism//lib/prism/node.rb#8616
- sig { returns(String) }
- def closing; end
-
- # attr_reader closing_loc: Location
- #
- # source://prism//lib/prism/node.rb#8601
- sig { returns(Prism::Location) }
- def closing_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#8550
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#8541
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?receiver: Prism::node, ?opening_loc: Location, ?arguments: ArgumentsNode?, ?closing_loc: Location, ?block: Prism::node?) -> IndexTargetNode
- #
- # source://prism//lib/prism/node.rb#8555
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- receiver: Prism::Node,
- opening_loc: Prism::Location,
- arguments: T.nilable(Prism::ArgumentsNode),
- closing_loc: Prism::Location,
- block: T.nilable(Prism::Node)
- ).returns(Prism::IndexTargetNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), receiver: T.unsafe(nil), opening_loc: T.unsafe(nil), arguments: T.unsafe(nil), closing_loc: T.unsafe(nil), block: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#8536
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, receiver: Prism::node, opening_loc: Location, arguments: ArgumentsNode?, closing_loc: Location, block: Prism::node? }
- #
- # source://prism//lib/prism/node.rb#8563
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def ignore_visibility?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#8583
- sig { returns(T::Boolean) }
- def ignore_visibility?; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#8621
- sig { override.returns(String) }
- def inspect; end
-
- # def opening: () -> String
- #
- # source://prism//lib/prism/node.rb#8611
- sig { returns(String) }
- def opening; end
-
- # attr_reader opening_loc: Location
- #
- # source://prism//lib/prism/node.rb#8591
- sig { returns(Prism::Location) }
- def opening_loc; end
-
- # attr_reader receiver: Prism::node
- #
- # source://prism//lib/prism/node.rb#8588
- sig { returns(Prism::Node) }
- def receiver; end
-
- # def safe_navigation?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#8568
- sig { returns(T::Boolean) }
- def safe_navigation?; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#8626
- sig { override.returns(Symbol) }
- def type; end
-
- # def variable_call?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#8573
- sig { returns(T::Boolean) }
- def variable_call?; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#8631
- def type; end
- end
-end
-
-# InlineComment objects are the most common. They correspond to comments in
-# the source file like this one that start with #.
-#
-# source://prism//lib/prism/parse_result.rb#397
-class Prism::InlineComment < ::Prism::Comment
- # Returns a string representation of this comment.
- #
- # source://prism//lib/prism/parse_result.rb#405
- sig { returns(String) }
- def inspect; end
-
- # Returns true if this comment happens on the same line as other code and
- # false if the comment is by itself.
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/parse_result.rb#400
- sig { override.returns(T::Boolean) }
- def trailing?; end
-end
-
-# This visitor is responsible for composing the strings that get returned by
-# the various #inspect methods defined on each of the nodes.
-#
-# source://prism//lib/prism/inspect_visitor.rb#12
-class Prism::InspectVisitor < ::Prism::Visitor
- # Initializes a new instance of the InspectVisitor.
- #
- # @return [InspectVisitor] a new instance of InspectVisitor
- #
- # source://prism//lib/prism/inspect_visitor.rb#35
- sig { params(indent: String).void }
- def initialize(indent = T.unsafe(nil)); end
-
- # The list of commands that we need to execute in order to compose the
- # final string.
- #
- # source://prism//lib/prism/inspect_visitor.rb#32
- def commands; end
-
- # Compose the final string.
- #
- # source://prism//lib/prism/inspect_visitor.rb#48
- sig { returns(String) }
- def compose; end
-
- # The current prefix string.
- #
- # source://prism//lib/prism/inspect_visitor.rb#28
- def indent; end
-
- # Inspect a AliasGlobalVariableNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#77
- def visit_alias_global_variable_node(node); end
-
- # Inspect a AliasMethodNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#89
- def visit_alias_method_node(node); end
-
- # Inspect a AlternationPatternNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#101
- def visit_alternation_pattern_node(node); end
-
- # Inspect a AndNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#113
- def visit_and_node(node); end
-
- # Inspect a ArgumentsNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#125
- def visit_arguments_node(node); end
-
- # Inspect a ArrayNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#141
- def visit_array_node(node); end
-
- # Inspect a ArrayPatternNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#159
- def visit_array_pattern_node(node); end
-
- # Inspect a AssocNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#198
- def visit_assoc_node(node); end
-
- # Inspect a AssocSplatNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#210
- def visit_assoc_splat_node(node); end
-
- # Inspect a BackReferenceReadNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#224
- def visit_back_reference_read_node(node); end
-
- # Inspect a BeginNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#232
- def visit_begin_node(node); end
-
- # Inspect a BlockArgumentNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#265
- def visit_block_argument_node(node); end
-
- # Inspect a BlockLocalVariableNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#279
- def visit_block_local_variable_node(node); end
-
- # Inspect a BlockNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#287
- def visit_block_node(node); end
-
- # Inspect a BlockParameterNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#309
- def visit_block_parameter_node(node); end
-
- # Inspect a BlockParametersNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#323
- def visit_block_parameters_node(node); end
-
- # Inspect a BreakNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#347
- def visit_break_node(node); end
-
- # Inspect a CallAndWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#361
- def visit_call_and_write_node(node); end
-
- # Inspect a CallNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#381
- def visit_call_node(node); end
-
- # Inspect a CallOperatorWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#411
- def visit_call_operator_write_node(node); end
-
- # Inspect a CallOrWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#432
- def visit_call_or_write_node(node); end
-
- # Inspect a CallTargetNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#452
- def visit_call_target_node(node); end
-
- # Inspect a CapturePatternNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#464
- def visit_capture_pattern_node(node); end
-
- # Inspect a CaseMatchNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#476
- def visit_case_match_node(node); end
-
- # Inspect a CaseNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#506
- def visit_case_node(node); end
-
- # Inspect a ClassNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#536
- def visit_class_node(node); end
-
- # Inspect a ClassVariableAndWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#562
- def visit_class_variable_and_write_node(node); end
-
- # Inspect a ClassVariableOperatorWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#574
- def visit_class_variable_operator_write_node(node); end
-
- # Inspect a ClassVariableOrWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#587
- def visit_class_variable_or_write_node(node); end
-
- # Inspect a ClassVariableReadNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#599
- def visit_class_variable_read_node(node); end
-
- # Inspect a ClassVariableTargetNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#607
- def visit_class_variable_target_node(node); end
-
- # Inspect a ClassVariableWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#615
- def visit_class_variable_write_node(node); end
-
- # Inspect a ConstantAndWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#627
- def visit_constant_and_write_node(node); end
-
- # Inspect a ConstantOperatorWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#639
- def visit_constant_operator_write_node(node); end
-
- # Inspect a ConstantOrWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#652
- def visit_constant_or_write_node(node); end
-
- # Inspect a ConstantPathAndWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#664
- def visit_constant_path_and_write_node(node); end
-
- # Inspect a ConstantPathNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#676
- def visit_constant_path_node(node); end
-
- # Inspect a ConstantPathOperatorWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#696
- def visit_constant_path_operator_write_node(node); end
-
- # Inspect a ConstantPathOrWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#709
- def visit_constant_path_or_write_node(node); end
-
- # Inspect a ConstantPathTargetNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#721
- def visit_constant_path_target_node(node); end
-
- # Inspect a ConstantPathWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#741
- def visit_constant_path_write_node(node); end
-
- # Inspect a ConstantReadNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#753
- def visit_constant_read_node(node); end
-
- # Inspect a ConstantTargetNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#761
- def visit_constant_target_node(node); end
-
- # Inspect a ConstantWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#769
- def visit_constant_write_node(node); end
-
- # Inspect a DefNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#781
- def visit_def_node(node); end
-
- # Inspect a DefinedNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#815
- def visit_defined_node(node); end
-
- # Inspect a ElseNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#827
- def visit_else_node(node); end
-
- # Inspect a EmbeddedStatementsNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#842
- def visit_embedded_statements_node(node); end
-
- # Inspect a EmbeddedVariableNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#857
- def visit_embedded_variable_node(node); end
-
- # Inspect a EnsureNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#867
- def visit_ensure_node(node); end
-
- # Inspect a FalseNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#882
- def visit_false_node(node); end
-
- # Inspect a FindPatternNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#889
- def visit_find_pattern_node(node); end
-
- # Inspect a FlipFlopNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#917
- def visit_flip_flop_node(node); end
-
- # Inspect a FloatNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#937
- def visit_float_node(node); end
-
- # Inspect a ForNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#945
- def visit_for_node(node); end
-
- # Inspect a ForwardingArgumentsNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#966
- def visit_forwarding_arguments_node(node); end
-
- # Inspect a ForwardingParameterNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#973
- def visit_forwarding_parameter_node(node); end
-
- # Inspect a ForwardingSuperNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#980
- def visit_forwarding_super_node(node); end
-
- # Inspect a GlobalVariableAndWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#993
- def visit_global_variable_and_write_node(node); end
-
- # Inspect a GlobalVariableOperatorWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1005
- def visit_global_variable_operator_write_node(node); end
-
- # Inspect a GlobalVariableOrWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1018
- def visit_global_variable_or_write_node(node); end
-
- # Inspect a GlobalVariableReadNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1030
- def visit_global_variable_read_node(node); end
-
- # Inspect a GlobalVariableTargetNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1038
- def visit_global_variable_target_node(node); end
-
- # Inspect a GlobalVariableWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1046
- def visit_global_variable_write_node(node); end
-
- # Inspect a HashNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1058
- def visit_hash_node(node); end
-
- # Inspect a HashPatternNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1076
- def visit_hash_pattern_node(node); end
-
- # Inspect a IfNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1106
- def visit_if_node(node); end
-
- # Inspect a ImaginaryNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1130
- def visit_imaginary_node(node); end
-
- # Inspect a ImplicitNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1139
- def visit_implicit_node(node); end
-
- # Inspect a ImplicitRestNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1148
- def visit_implicit_rest_node(node); end
-
- # Inspect a InNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1155
- def visit_in_node(node); end
-
- # Inspect a IndexAndWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1172
- def visit_index_and_write_node(node); end
-
- # Inspect a IndexOperatorWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1203
- def visit_index_operator_write_node(node); end
-
- # Inspect a IndexOrWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1235
- def visit_index_or_write_node(node); end
-
- # Inspect a IndexTargetNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1266
- def visit_index_target_node(node); end
-
- # Inspect a InstanceVariableAndWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1289
- def visit_instance_variable_and_write_node(node); end
-
- # Inspect a InstanceVariableOperatorWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1301
- def visit_instance_variable_operator_write_node(node); end
-
- # Inspect a InstanceVariableOrWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1314
- def visit_instance_variable_or_write_node(node); end
-
- # Inspect a InstanceVariableReadNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1326
- def visit_instance_variable_read_node(node); end
-
- # Inspect a InstanceVariableTargetNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1334
- def visit_instance_variable_target_node(node); end
-
- # Inspect a InstanceVariableWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1342
- def visit_instance_variable_write_node(node); end
-
- # Inspect a IntegerNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1354
- def visit_integer_node(node); end
-
- # Inspect a InterpolatedMatchLastLineNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1362
- def visit_interpolated_match_last_line_node(node); end
-
- # Inspect a InterpolatedRegularExpressionNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1380
- def visit_interpolated_regular_expression_node(node); end
-
- # Inspect a InterpolatedStringNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1398
- def visit_interpolated_string_node(node); end
-
- # Inspect a InterpolatedSymbolNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1416
- def visit_interpolated_symbol_node(node); end
-
- # Inspect a InterpolatedXStringNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1434
- def visit_interpolated_x_string_node(node); end
-
- # Inspect a ItLocalVariableReadNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1452
- def visit_it_local_variable_read_node(node); end
-
- # Inspect a ItParametersNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1459
- def visit_it_parameters_node(node); end
-
- # Inspect a KeywordHashNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1466
- def visit_keyword_hash_node(node); end
-
- # Inspect a KeywordRestParameterNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1482
- def visit_keyword_rest_parameter_node(node); end
-
- # Inspect a LambdaNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1496
- def visit_lambda_node(node); end
-
- # Inspect a LocalVariableAndWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1519
- def visit_local_variable_and_write_node(node); end
-
- # Inspect a LocalVariableOperatorWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1532
- def visit_local_variable_operator_write_node(node); end
-
- # Inspect a LocalVariableOrWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1546
- def visit_local_variable_or_write_node(node); end
-
- # Inspect a LocalVariableReadNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1559
- def visit_local_variable_read_node(node); end
-
- # Inspect a LocalVariableTargetNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1568
- def visit_local_variable_target_node(node); end
-
- # Inspect a LocalVariableWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1577
- def visit_local_variable_write_node(node); end
-
- # Inspect a MatchLastLineNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1590
- def visit_match_last_line_node(node); end
-
- # Inspect a MatchPredicateNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1601
- def visit_match_predicate_node(node); end
-
- # Inspect a MatchRequiredNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1613
- def visit_match_required_node(node); end
-
- # Inspect a MatchWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1625
- def visit_match_write_node(node); end
-
- # Inspect a MissingNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1643
- def visit_missing_node(node); end
-
- # Inspect a ModuleNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1650
- def visit_module_node(node); end
-
- # Inspect a MultiTargetNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1669
- def visit_multi_target_node(node); end
-
- # Inspect a MultiWriteNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1702
- def visit_multi_write_node(node); end
-
- # Inspect a NextNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1738
- def visit_next_node(node); end
-
- # Inspect a NilNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1752
- def visit_nil_node(node); end
-
- # Inspect a NoKeywordsParameterNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1759
- def visit_no_keywords_parameter_node(node); end
-
- # Inspect a NumberedParametersNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1768
- def visit_numbered_parameters_node(node); end
-
- # Inspect a NumberedReferenceReadNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1776
- def visit_numbered_reference_read_node(node); end
-
- # Inspect a OptionalKeywordParameterNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1784
- def visit_optional_keyword_parameter_node(node); end
-
- # Inspect a OptionalParameterNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1795
- def visit_optional_parameter_node(node); end
-
- # Inspect a OrNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1807
- def visit_or_node(node); end
-
- # Inspect a ParametersNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1819
- def visit_parameters_node(node); end
-
- # Inspect a ParenthesesNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1880
- def visit_parentheses_node(node); end
-
- # Inspect a PinnedExpressionNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1895
- def visit_pinned_expression_node(node); end
-
- # Inspect a PinnedVariableNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1907
- def visit_pinned_variable_node(node); end
-
- # Inspect a PostExecutionNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1917
- def visit_post_execution_node(node); end
-
- # Inspect a PreExecutionNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1933
- def visit_pre_execution_node(node); end
-
- # Inspect a ProgramNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1949
- def visit_program_node(node); end
-
- # Inspect a RangeNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1959
- def visit_range_node(node); end
-
- # Inspect a RationalNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1979
- def visit_rational_node(node); end
-
- # Inspect a RedoNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1988
- def visit_redo_node(node); end
-
- # Inspect a RegularExpressionNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#1995
- def visit_regular_expression_node(node); end
-
- # Inspect a RequiredKeywordParameterNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#2006
- def visit_required_keyword_parameter_node(node); end
-
- # Inspect a RequiredParameterNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#2015
- def visit_required_parameter_node(node); end
-
- # Inspect a RescueModifierNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#2023
- def visit_rescue_modifier_node(node); end
-
- # Inspect a RescueNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#2035
- def visit_rescue_node(node); end
-
- # Inspect a RestParameterNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#2071
- def visit_rest_parameter_node(node); end
-
- # Inspect a RetryNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#2085
- def visit_retry_node(node); end
-
- # Inspect a ReturnNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#2092
- def visit_return_node(node); end
-
- # Inspect a SelfNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#2106
- def visit_self_node(node); end
-
- # Inspect a ShareableConstantNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#2113
- def visit_shareable_constant_node(node); end
-
- # Inspect a SingletonClassNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#2122
- def visit_singleton_class_node(node); end
-
- # Inspect a SourceEncodingNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#2141
- def visit_source_encoding_node(node); end
-
- # Inspect a SourceFileNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#2148
- def visit_source_file_node(node); end
-
- # Inspect a SourceLineNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#2156
- def visit_source_line_node(node); end
-
- # Inspect a SplatNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#2163
- def visit_splat_node(node); end
-
- # Inspect a StatementsNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#2177
- def visit_statements_node(node); end
-
- # Inspect a StringNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#2193
- def visit_string_node(node); end
-
- # Inspect a SuperNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#2204
- def visit_super_node(node); end
-
- # Inspect a SymbolNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#2226
- def visit_symbol_node(node); end
-
- # Inspect a TrueNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#2237
- def visit_true_node(node); end
-
- # Inspect a UndefNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#2244
- def visit_undef_node(node); end
-
- # Inspect a UnlessNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#2261
- def visit_unless_node(node); end
-
- # Inspect a UntilNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#2285
- def visit_until_node(node); end
-
- # Inspect a WhenNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#2302
- def visit_when_node(node); end
-
- # Inspect a WhileNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#2326
- def visit_while_node(node); end
-
- # Inspect a XStringNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#2343
- def visit_x_string_node(node); end
-
- # Inspect a YieldNode node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#2354
- def visit_yield_node(node); end
-
- private
-
- # Compose a string representing the given inner location field.
- #
- # source://prism//lib/prism/inspect_visitor.rb#2378
- def inspect_location(location); end
-
- # Compose a header for the given node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#2372
- def inspect_node(name, node); end
-
- class << self
- # Compose an inspect string for the given node.
- #
- # source://prism//lib/prism/inspect_visitor.rb#41
- sig { params(node: Prism::Node).returns(String) }
- def compose(node); end
- end
-end
-
-# Most of the time, we can simply pass down the indent to the next node.
-# However, when we are inside a list we want some extra special formatting
-# when we hit an element in that list. In this case, we have a special
-# command that replaces the subsequent indent with the given value.
-#
-# source://prism//lib/prism/inspect_visitor.rb#17
-class Prism::InspectVisitor::Replace
- # @return [Replace] a new instance of Replace
- #
- # source://prism//lib/prism/inspect_visitor.rb#20
- def initialize(value); end
-
- # source://prism//lib/prism/inspect_visitor.rb#18
- def value; end
-end
-
-# Represents the use of the `&&=` operator for assignment to an instance variable.
-#
-# @target &&= value
-# ^^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#8652
-class Prism::InstanceVariableAndWriteNode < ::Prism::Node
- # Initialize a new InstanceVariableAndWriteNode node.
- #
- # @return [InstanceVariableAndWriteNode] a new instance of InstanceVariableAndWriteNode
- #
- # source://prism//lib/prism/node.rb#8654
- def initialize(source, node_id, location, flags, name, name_loc, operator_loc, value); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#8740
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#8666
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#8671
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#8681
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#8676
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol, ?name_loc: Location, ?operator_loc: Location, ?value: Prism::node) -> InstanceVariableAndWriteNode
- #
- # source://prism//lib/prism/node.rb#8686
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#8671
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol, name_loc: Location, operator_loc: Location, value: Prism::node }
- #
- # source://prism//lib/prism/node.rb#8694
- def deconstruct_keys(keys); end
-
- # source://prism//lib/prism/desugar_compiler.rb#218
- def desugar; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#8724
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#8699
- def name; end
-
- # attr_reader name_loc: Location
- #
- # source://prism//lib/prism/node.rb#8702
- def name_loc; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#8719
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#8709
- def operator_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#8729
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#8716
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#8734
- def type; end
- end
-end
-
-# Represents assigning to an instance variable using an operator that isn't `=`.
-#
-# @target += value
-# ^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#8753
-class Prism::InstanceVariableOperatorWriteNode < ::Prism::Node
- # Initialize a new InstanceVariableOperatorWriteNode node.
- #
- # @return [InstanceVariableOperatorWriteNode] a new instance of InstanceVariableOperatorWriteNode
- #
- # source://prism//lib/prism/node.rb#8755
- def initialize(source, node_id, location, flags, name, name_loc, binary_operator_loc, value, binary_operator); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#8840
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#8768
- def accept(visitor); end
-
- # attr_reader binary_operator: Symbol
- #
- # source://prism//lib/prism/node.rb#8821
- def binary_operator; end
-
- # attr_reader binary_operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#8811
- def binary_operator_loc; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#8773
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#8783
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#8778
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol, ?name_loc: Location, ?binary_operator_loc: Location, ?value: Prism::node, ?binary_operator: Symbol) -> InstanceVariableOperatorWriteNode
- #
- # source://prism//lib/prism/node.rb#8788
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), binary_operator_loc: T.unsafe(nil), value: T.unsafe(nil), binary_operator: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#8773
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol, name_loc: Location, binary_operator_loc: Location, value: Prism::node, binary_operator: Symbol }
- #
- # source://prism//lib/prism/node.rb#8796
- def deconstruct_keys(keys); end
-
- # source://prism//lib/prism/desugar_compiler.rb#230
- def desugar; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#8824
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#8801
- def name; end
-
- # attr_reader name_loc: Location
- #
- # source://prism//lib/prism/node.rb#8804
- def name_loc; end
-
- # Returns the binary operator used to modify the receiver. This method is
- # deprecated in favor of #binary_operator.
- #
- # source://prism//lib/prism/node_ext.rb#435
- def operator; end
-
- # Returns the location of the binary operator used to modify the receiver.
- # This method is deprecated in favor of #binary_operator_loc.
- #
- # source://prism//lib/prism/node_ext.rb#442
- def operator_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#8829
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#8818
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#8834
- def type; end
- end
-end
-
-# Represents the use of the `||=` operator for assignment to an instance variable.
-#
-# @target ||= value
-# ^^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#8854
-class Prism::InstanceVariableOrWriteNode < ::Prism::Node
- # Initialize a new InstanceVariableOrWriteNode node.
- #
- # @return [InstanceVariableOrWriteNode] a new instance of InstanceVariableOrWriteNode
- #
- # source://prism//lib/prism/node.rb#8856
- def initialize(source, node_id, location, flags, name, name_loc, operator_loc, value); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#8942
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#8868
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#8873
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#8883
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#8878
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol, ?name_loc: Location, ?operator_loc: Location, ?value: Prism::node) -> InstanceVariableOrWriteNode
- #
- # source://prism//lib/prism/node.rb#8888
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#8873
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol, name_loc: Location, operator_loc: Location, value: Prism::node }
- #
- # source://prism//lib/prism/node.rb#8896
- def deconstruct_keys(keys); end
-
- # source://prism//lib/prism/desugar_compiler.rb#224
- def desugar; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#8926
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#8901
- def name; end
-
- # attr_reader name_loc: Location
- #
- # source://prism//lib/prism/node.rb#8904
- def name_loc; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#8921
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#8911
- def operator_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#8931
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#8918
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#8936
- def type; end
- end
-end
-
-# Represents referencing an instance variable.
-#
-# @foo
-# ^^^^
-#
-# source://prism//lib/prism/node.rb#8955
-class Prism::InstanceVariableReadNode < ::Prism::Node
- # Initialize a new InstanceVariableReadNode node.
- #
- # @return [InstanceVariableReadNode] a new instance of InstanceVariableReadNode
- #
- # source://prism//lib/prism/node.rb#8957
- def initialize(source, node_id, location, flags, name); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#9022
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#8966
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#8971
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#8981
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#8976
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol) -> InstanceVariableReadNode
- #
- # source://prism//lib/prism/node.rb#8986
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#8971
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol }
- #
- # source://prism//lib/prism/node.rb#8994
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#9006
- sig { override.returns(String) }
- def inspect; end
-
- # The name of the instance variable, which is a `@` followed by an [identifier](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#identifiers).
- #
- # @x # name `:@x`
- #
- # @_test # name `:@_test`
- #
- # source://prism//lib/prism/node.rb#9003
- def name; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#9011
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#9016
- def type; end
- end
-end
-
-# Represents writing to an instance variable in a context that doesn't have an explicit value.
-#
-# @foo, @bar = baz
-# ^^^^ ^^^^
-#
-# source://prism//lib/prism/node.rb#9032
-class Prism::InstanceVariableTargetNode < ::Prism::Node
- # Initialize a new InstanceVariableTargetNode node.
- #
- # @return [InstanceVariableTargetNode] a new instance of InstanceVariableTargetNode
- #
- # source://prism//lib/prism/node.rb#9034
- def initialize(source, node_id, location, flags, name); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#9095
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#9043
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#9048
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#9058
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#9053
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol) -> InstanceVariableTargetNode
- #
- # source://prism//lib/prism/node.rb#9063
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#9048
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol }
- #
- # source://prism//lib/prism/node.rb#9071
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#9079
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#9076
- def name; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#9084
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#9089
- def type; end
- end
-end
-
-# Represents writing to an instance variable.
-#
-# @foo = 1
-# ^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#9105
-class Prism::InstanceVariableWriteNode < ::Prism::Node
- # Initialize a new InstanceVariableWriteNode node.
- #
- # @return [InstanceVariableWriteNode] a new instance of InstanceVariableWriteNode
- #
- # source://prism//lib/prism/node.rb#9107
- def initialize(source, node_id, location, flags, name, name_loc, value, operator_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#9209
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#9119
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#9124
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#9134
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#9129
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol, ?name_loc: Location, ?value: Prism::node, ?operator_loc: Location) -> InstanceVariableWriteNode
- #
- # source://prism//lib/prism/node.rb#9139
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), value: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#9124
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol, name_loc: Location, value: Prism::node, operator_loc: Location }
- #
- # source://prism//lib/prism/node.rb#9147
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#9193
- sig { override.returns(String) }
- def inspect; end
-
- # The name of the instance variable, which is a `@` followed by an [identifier](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#identifiers).
- #
- # @x = :y # name `:@x`
- #
- # @_foo = "bar" # name `@_foo`
- #
- # source://prism//lib/prism/node.rb#9156
- def name; end
-
- # The location of the variable name.
- #
- # @_x = 1
- # ^^^
- #
- # source://prism//lib/prism/node.rb#9162
- def name_loc; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#9188
- def operator; end
-
- # The location of the `=` operator.
- #
- # @x = y
- # ^
- #
- # source://prism//lib/prism/node.rb#9181
- def operator_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#9198
- sig { override.returns(Symbol) }
- def type; end
-
- # The value to write to the instance variable. It can be any [non-void expression](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#non-void-expression).
- #
- # @foo = :bar
- # ^^^^
- #
- # @_x = 1234
- # ^^^^
- #
- # source://prism//lib/prism/node.rb#9175
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#9203
- def type; end
- end
-end
-
-# Flags for integer nodes that correspond to the base of the integer.
-#
-# source://prism//lib/prism/node.rb#16689
-module Prism::IntegerBaseFlags; end
-
-# 0b prefix
-#
-# source://prism//lib/prism/node.rb#16691
-Prism::IntegerBaseFlags::BINARY = T.let(T.unsafe(nil), Integer)
-
-# 0d or no prefix
-#
-# source://prism//lib/prism/node.rb#16694
-Prism::IntegerBaseFlags::DECIMAL = T.let(T.unsafe(nil), Integer)
-
-# 0x prefix
-#
-# source://prism//lib/prism/node.rb#16700
-Prism::IntegerBaseFlags::HEXADECIMAL = T.let(T.unsafe(nil), Integer)
-
-# 0o or 0 prefix
-#
-# source://prism//lib/prism/node.rb#16697
-Prism::IntegerBaseFlags::OCTAL = T.let(T.unsafe(nil), Integer)
-
-# Represents an integer number literal.
-#
-# 1
-# ^
-#
-# source://prism//lib/prism/node.rb#9222
-class Prism::IntegerNode < ::Prism::Node
- # Initialize a new IntegerNode node.
- #
- # @return [IntegerNode] a new instance of IntegerNode
- #
- # source://prism//lib/prism/node.rb#9224
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- value: Integer
- ).void
- end
- def initialize(source, node_id, location, flags, value); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#9305
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#9233
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def binary?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#9266
- sig { returns(T::Boolean) }
- def binary?; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#9238
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#9248
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#9243
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?value: Integer) -> IntegerNode
- #
- # source://prism//lib/prism/node.rb#9253
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- value: Integer
- ).returns(Prism::IntegerNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # def decimal?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#9271
- sig { returns(T::Boolean) }
- def decimal?; end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#9238
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, value: Integer }
- #
- # source://prism//lib/prism/node.rb#9261
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def hexadecimal?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#9281
- sig { returns(T::Boolean) }
- def hexadecimal?; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#9289
- sig { override.returns(String) }
- def inspect; end
-
- # def octal?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#9276
- sig { returns(T::Boolean) }
- def octal?; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#9294
- sig { override.returns(Symbol) }
- def type; end
-
- # The value of the integer literal as a number.
- #
- # source://prism//lib/prism/node.rb#9286
- sig { returns(Integer) }
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#9299
- def type; end
- end
-end
-
-# Represents a regular expression literal that contains interpolation that is being used in the predicate of a conditional to implicitly match against the last line read by an IO object.
-#
-# if /foo #{bar} baz/ then end
-# ^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#9316
-class Prism::InterpolatedMatchLastLineNode < ::Prism::Node
- include ::Prism::RegularExpressionOptions
-
- # Initialize a new InterpolatedMatchLastLineNode node.
- #
- # @return [InterpolatedMatchLastLineNode] a new instance of InterpolatedMatchLastLineNode
- #
- # source://prism//lib/prism/node.rb#9318
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- opening_loc: Prism::Location,
- parts: T::Array[T.any(Prism::StringNode, Prism::EmbeddedStatementsNode, Prism::EmbeddedVariableNode)],
- closing_loc: Prism::Location
- ).void
- end
- def initialize(source, node_id, location, flags, opening_loc, parts, closing_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#9460
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#9329
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def ascii_8bit?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#9387
- sig { returns(T::Boolean) }
- def ascii_8bit?; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#9334
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def closing: () -> String
- #
- # source://prism//lib/prism/node.rb#9439
- sig { returns(String) }
- def closing; end
-
- # attr_reader closing_loc: Location
- #
- # source://prism//lib/prism/node.rb#9427
- sig { returns(Prism::Location) }
- def closing_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#9344
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#9339
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?opening_loc: Location, ?parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode], ?closing_loc: Location) -> InterpolatedMatchLastLineNode
- #
- # source://prism//lib/prism/node.rb#9349
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- opening_loc: Prism::Location,
- parts: T::Array[T.any(Prism::StringNode, Prism::EmbeddedStatementsNode, Prism::EmbeddedVariableNode)],
- closing_loc: Prism::Location
- ).returns(Prism::InterpolatedMatchLastLineNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), opening_loc: T.unsafe(nil), parts: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#9334
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, opening_loc: Location, parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode], closing_loc: Location }
- #
- # source://prism//lib/prism/node.rb#9357
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- # def euc_jp?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#9382
- sig { returns(T::Boolean) }
- def euc_jp?; end
-
- # def extended?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#9367
- sig { returns(T::Boolean) }
- def extended?; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def forced_binary_encoding?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#9407
- sig { returns(T::Boolean) }
- def forced_binary_encoding?; end
-
- # def forced_us_ascii_encoding?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#9412
- sig { returns(T::Boolean) }
- def forced_us_ascii_encoding?; end
-
- # def forced_utf8_encoding?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#9402
- sig { returns(T::Boolean) }
- def forced_utf8_encoding?; end
-
- # def ignore_case?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#9362
- sig { returns(T::Boolean) }
- def ignore_case?; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#9444
- sig { override.returns(String) }
- def inspect; end
-
- # def multi_line?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#9372
- sig { returns(T::Boolean) }
- def multi_line?; end
-
- # source://prism//lib/prism/parse_result/newlines.rb#121
- def newline_flag!(lines); end
-
- # def once?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#9377
- sig { returns(T::Boolean) }
- def once?; end
-
- # def opening: () -> String
- #
- # source://prism//lib/prism/node.rb#9434
- sig { returns(String) }
- def opening; end
-
- # attr_reader opening_loc: Location
- #
- # source://prism//lib/prism/node.rb#9417
- sig { returns(Prism::Location) }
- def opening_loc; end
-
- sig { returns(Integer) }
- def options; end
-
- # attr_reader parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode]
- #
- # source://prism//lib/prism/node.rb#9424
- sig { returns(T::Array[T.any(Prism::StringNode, Prism::EmbeddedStatementsNode, Prism::EmbeddedVariableNode)]) }
- def parts; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#9449
- sig { override.returns(Symbol) }
- def type; end
-
- # def utf_8?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#9397
- sig { returns(T::Boolean) }
- def utf_8?; end
-
- # def windows_31j?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#9392
- sig { returns(T::Boolean) }
- def windows_31j?; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#9454
- def type; end
- end
-end
-
-# Represents a regular expression literal that contains interpolation.
-#
-# /foo #{bar} baz/
-# ^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#9474
-class Prism::InterpolatedRegularExpressionNode < ::Prism::Node
- include ::Prism::RegularExpressionOptions
-
- # Initialize a new InterpolatedRegularExpressionNode node.
- #
- # @return [InterpolatedRegularExpressionNode] a new instance of InterpolatedRegularExpressionNode
- #
- # source://prism//lib/prism/node.rb#9476
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- opening_loc: Prism::Location,
- parts: T::Array[T.any(Prism::StringNode, Prism::EmbeddedStatementsNode, Prism::EmbeddedVariableNode)],
- closing_loc: Prism::Location
- ).void
- end
- def initialize(source, node_id, location, flags, opening_loc, parts, closing_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#9618
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#9487
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def ascii_8bit?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#9545
- sig { returns(T::Boolean) }
- def ascii_8bit?; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#9492
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def closing: () -> String
- #
- # source://prism//lib/prism/node.rb#9597
- sig { returns(String) }
- def closing; end
-
- # attr_reader closing_loc: Location
- #
- # source://prism//lib/prism/node.rb#9585
- sig { returns(Prism::Location) }
- def closing_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#9502
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#9497
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?opening_loc: Location, ?parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode], ?closing_loc: Location) -> InterpolatedRegularExpressionNode
- #
- # source://prism//lib/prism/node.rb#9507
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- opening_loc: Prism::Location,
- parts: T::Array[T.any(Prism::StringNode, Prism::EmbeddedStatementsNode, Prism::EmbeddedVariableNode)],
- closing_loc: Prism::Location
- ).returns(Prism::InterpolatedRegularExpressionNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), opening_loc: T.unsafe(nil), parts: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#9492
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, opening_loc: Location, parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode], closing_loc: Location }
- #
- # source://prism//lib/prism/node.rb#9515
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- # def euc_jp?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#9540
- sig { returns(T::Boolean) }
- def euc_jp?; end
-
- # def extended?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#9525
- sig { returns(T::Boolean) }
- def extended?; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def forced_binary_encoding?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#9565
- sig { returns(T::Boolean) }
- def forced_binary_encoding?; end
-
- # def forced_us_ascii_encoding?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#9570
- sig { returns(T::Boolean) }
- def forced_us_ascii_encoding?; end
-
- # def forced_utf8_encoding?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#9560
- sig { returns(T::Boolean) }
- def forced_utf8_encoding?; end
-
- # def ignore_case?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#9520
- sig { returns(T::Boolean) }
- def ignore_case?; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#9602
- sig { override.returns(String) }
- def inspect; end
-
- # def multi_line?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#9530
- sig { returns(T::Boolean) }
- def multi_line?; end
-
- # source://prism//lib/prism/parse_result/newlines.rb#128
- def newline_flag!(lines); end
-
- # def once?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#9535
- sig { returns(T::Boolean) }
- def once?; end
-
- # def opening: () -> String
- #
- # source://prism//lib/prism/node.rb#9592
- sig { returns(String) }
- def opening; end
-
- # attr_reader opening_loc: Location
- #
- # source://prism//lib/prism/node.rb#9575
- sig { returns(Prism::Location) }
- def opening_loc; end
-
- sig { returns(Integer) }
- def options; end
-
- # attr_reader parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode]
- #
- # source://prism//lib/prism/node.rb#9582
- sig { returns(T::Array[T.any(Prism::StringNode, Prism::EmbeddedStatementsNode, Prism::EmbeddedVariableNode)]) }
- def parts; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#9607
- sig { override.returns(Symbol) }
- def type; end
-
- # def utf_8?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#9555
- sig { returns(T::Boolean) }
- def utf_8?; end
-
- # def windows_31j?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#9550
- sig { returns(T::Boolean) }
- def windows_31j?; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#9612
- def type; end
- end
-end
-
-# Represents a string literal that contains interpolation.
-#
-# "foo #{bar} baz"
-# ^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#9632
-class Prism::InterpolatedStringNode < ::Prism::Node
- include ::Prism::HeredocQuery
-
- # Initialize a new InterpolatedStringNode node.
- #
- # @return [InterpolatedStringNode] a new instance of InterpolatedStringNode
- #
- # source://prism//lib/prism/node.rb#9634
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- opening_loc: T.nilable(Prism::Location),
- parts: T::Array[T.any(Prism::StringNode, Prism::EmbeddedStatementsNode, Prism::EmbeddedVariableNode, Prism::InterpolatedStringNode)],
- closing_loc: T.nilable(Prism::Location)
- ).void
- end
- def initialize(source, node_id, location, flags, opening_loc, parts, closing_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#9743
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#9645
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#9650
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def closing: () -> String?
- #
- # source://prism//lib/prism/node.rb#9722
- sig { returns(T.nilable(String)) }
- def closing; end
-
- # attr_reader closing_loc: Location?
- #
- # source://prism//lib/prism/node.rb#9704
- sig { returns(T.nilable(Prism::Location)) }
- def closing_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#9660
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#9655
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?opening_loc: Location?, ?parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode | InterpolatedStringNode], ?closing_loc: Location?) -> InterpolatedStringNode
- #
- # source://prism//lib/prism/node.rb#9665
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- opening_loc: T.nilable(Prism::Location),
- parts: T::Array[T.any(Prism::StringNode, Prism::EmbeddedStatementsNode, Prism::EmbeddedVariableNode, Prism::InterpolatedStringNode)],
- closing_loc: T.nilable(Prism::Location)
- ).returns(Prism::InterpolatedStringNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), opening_loc: T.unsafe(nil), parts: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#9650
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, opening_loc: Location?, parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode | InterpolatedStringNode], closing_loc: Location? }
- #
- # source://prism//lib/prism/node.rb#9673
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def frozen?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#9678
- sig { returns(T::Boolean) }
- def frozen?; end
-
- sig { returns(T::Boolean) }
- def heredoc?; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#9727
- sig { override.returns(String) }
- def inspect; end
-
- # def mutable?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#9683
- sig { returns(T::Boolean) }
- def mutable?; end
-
- # source://prism//lib/prism/parse_result/newlines.rb#135
- def newline_flag!(lines); end
-
- # def opening: () -> String?
- #
- # source://prism//lib/prism/node.rb#9717
- sig { returns(T.nilable(String)) }
- def opening; end
-
- # attr_reader opening_loc: Location?
- #
- # source://prism//lib/prism/node.rb#9688
- sig { returns(T.nilable(Prism::Location)) }
- def opening_loc; end
-
- # attr_reader parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode | InterpolatedStringNode]
- #
- # source://prism//lib/prism/node.rb#9701
- sig do
- returns(T::Array[T.any(Prism::StringNode, Prism::EmbeddedStatementsNode, Prism::EmbeddedVariableNode, Prism::InterpolatedStringNode)])
- end
- def parts; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#9732
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#9737
- def type; end
- end
-end
-
-# Flags for interpolated string nodes that indicated mutability if they are also marked as literals.
-#
-# source://prism//lib/prism/node.rb#16704
-module Prism::InterpolatedStringNodeFlags; end
-
-# source://prism//lib/prism/node.rb#16706
-Prism::InterpolatedStringNodeFlags::FROZEN = T.let(T.unsafe(nil), Integer)
-
-# source://prism//lib/prism/node.rb#16709
-Prism::InterpolatedStringNodeFlags::MUTABLE = T.let(T.unsafe(nil), Integer)
-
-# Represents a symbol literal that contains interpolation.
-#
-# :"foo #{bar} baz"
-# ^^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#9757
-class Prism::InterpolatedSymbolNode < ::Prism::Node
- # Initialize a new InterpolatedSymbolNode node.
- #
- # @return [InterpolatedSymbolNode] a new instance of InterpolatedSymbolNode
- #
- # source://prism//lib/prism/node.rb#9759
- def initialize(source, node_id, location, flags, opening_loc, parts, closing_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#9858
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#9770
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#9775
- def child_nodes; end
-
- # def closing: () -> String?
- #
- # source://prism//lib/prism/node.rb#9837
- def closing; end
-
- # attr_reader closing_loc: Location?
- #
- # source://prism//lib/prism/node.rb#9819
- def closing_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#9785
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#9780
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?opening_loc: Location?, ?parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode], ?closing_loc: Location?) -> InterpolatedSymbolNode
- #
- # source://prism//lib/prism/node.rb#9790
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), opening_loc: T.unsafe(nil), parts: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#9775
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, opening_loc: Location?, parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode], closing_loc: Location? }
- #
- # source://prism//lib/prism/node.rb#9798
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#9842
- sig { override.returns(String) }
- def inspect; end
-
- # source://prism//lib/prism/parse_result/newlines.rb#142
- def newline_flag!(lines); end
-
- # def opening: () -> String?
- #
- # source://prism//lib/prism/node.rb#9832
- def opening; end
-
- # attr_reader opening_loc: Location?
- #
- # source://prism//lib/prism/node.rb#9803
- def opening_loc; end
-
- # attr_reader parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode]
- #
- # source://prism//lib/prism/node.rb#9816
- def parts; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#9847
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#9852
- def type; end
- end
-end
-
-# Represents an xstring literal that contains interpolation.
-#
-# `foo #{bar} baz`
-# ^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#9871
-class Prism::InterpolatedXStringNode < ::Prism::Node
- include ::Prism::HeredocQuery
-
- # Initialize a new InterpolatedXStringNode node.
- #
- # @return [InterpolatedXStringNode] a new instance of InterpolatedXStringNode
- #
- # source://prism//lib/prism/node.rb#9873
- def initialize(source, node_id, location, flags, opening_loc, parts, closing_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#9960
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#9884
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#9889
- def child_nodes; end
-
- # def closing: () -> String
- #
- # source://prism//lib/prism/node.rb#9939
- def closing; end
-
- # attr_reader closing_loc: Location
- #
- # source://prism//lib/prism/node.rb#9927
- def closing_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#9899
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#9894
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?opening_loc: Location, ?parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode], ?closing_loc: Location) -> InterpolatedXStringNode
- #
- # source://prism//lib/prism/node.rb#9904
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), opening_loc: T.unsafe(nil), parts: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#9889
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, opening_loc: Location, parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode], closing_loc: Location }
- #
- # source://prism//lib/prism/node.rb#9912
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- sig { returns(T::Boolean) }
- def heredoc?; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#9944
- sig { override.returns(String) }
- def inspect; end
-
- # source://prism//lib/prism/parse_result/newlines.rb#149
- def newline_flag!(lines); end
-
- # def opening: () -> String
- #
- # source://prism//lib/prism/node.rb#9934
- def opening; end
-
- # attr_reader opening_loc: Location
- #
- # source://prism//lib/prism/node.rb#9917
- def opening_loc; end
-
- # attr_reader parts: Array[StringNode | EmbeddedStatementsNode | EmbeddedVariableNode]
- #
- # source://prism//lib/prism/node.rb#9924
- def parts; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#9949
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#9954
- def type; end
- end
-end
-
-# Represents reading from the implicit `it` local variable.
-#
-# -> { it }
-# ^^
-#
-# source://prism//lib/prism/node.rb#9973
-class Prism::ItLocalVariableReadNode < ::Prism::Node
- # Initialize a new ItLocalVariableReadNode node.
- #
- # @return [ItLocalVariableReadNode] a new instance of ItLocalVariableReadNode
- #
- # source://prism//lib/prism/node.rb#9975
- def initialize(source, node_id, location, flags); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#10032
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#9983
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#9988
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#9998
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#9993
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer) -> ItLocalVariableReadNode
- #
- # source://prism//lib/prism/node.rb#10003
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#9988
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location }
- #
- # source://prism//lib/prism/node.rb#10011
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#10016
- sig { override.returns(String) }
- def inspect; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#10021
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#10026
- def type; end
- end
-end
-
-# Represents an implicit set of parameters through the use of the `it` keyword within a block or lambda.
-#
-# -> { it + it }
-# ^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#10041
-class Prism::ItParametersNode < ::Prism::Node
- # Initialize a new ItParametersNode node.
- #
- # @return [ItParametersNode] a new instance of ItParametersNode
- #
- # source://prism//lib/prism/node.rb#10043
- def initialize(source, node_id, location, flags); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#10100
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#10051
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#10056
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#10066
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#10061
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer) -> ItParametersNode
- #
- # source://prism//lib/prism/node.rb#10071
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#10056
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location }
- #
- # source://prism//lib/prism/node.rb#10079
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#10084
- sig { override.returns(String) }
- def inspect; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#10089
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#10094
- def type; end
- end
-end
-
-# Represents a hash literal without opening and closing braces.
-#
-# foo(a: b)
-# ^^^^
-#
-# source://prism//lib/prism/node.rb#10109
-class Prism::KeywordHashNode < ::Prism::Node
- # Initialize a new KeywordHashNode node.
- #
- # @return [KeywordHashNode] a new instance of KeywordHashNode
- #
- # source://prism//lib/prism/node.rb#10111
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- elements: T::Array[T.any(Prism::AssocNode, Prism::AssocSplatNode)]
- ).void
- end
- def initialize(source, node_id, location, flags, elements); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#10177
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#10120
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#10125
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#10135
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#10130
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?elements: Array[AssocNode | AssocSplatNode]) -> KeywordHashNode
- #
- # source://prism//lib/prism/node.rb#10140
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- elements: T::Array[T.any(Prism::AssocNode, Prism::AssocSplatNode)]
- ).returns(Prism::KeywordHashNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), elements: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#10125
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, elements: Array[AssocNode | AssocSplatNode] }
- #
- # source://prism//lib/prism/node.rb#10148
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- # attr_reader elements: Array[AssocNode | AssocSplatNode]
- #
- # source://prism//lib/prism/node.rb#10158
- sig { returns(T::Array[T.any(Prism::AssocNode, Prism::AssocSplatNode)]) }
- def elements; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#10161
- sig { override.returns(String) }
- def inspect; end
-
- # def symbol_keys?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#10153
- sig { returns(T::Boolean) }
- def symbol_keys?; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#10166
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#10171
- def type; end
- end
-end
-
-# Flags for keyword hash nodes.
-#
-# source://prism//lib/prism/node.rb#16713
-module Prism::KeywordHashNodeFlags; end
-
-# a keyword hash which only has `AssocNode` elements all with symbol keys, which means the elements can be treated as keyword arguments
-#
-# source://prism//lib/prism/node.rb#16715
-Prism::KeywordHashNodeFlags::SYMBOL_KEYS = T.let(T.unsafe(nil), Integer)
-
-# Represents a keyword rest parameter to a method, block, or lambda definition.
-#
-# def a(**b)
-# ^^^
-# end
-#
-# source://prism//lib/prism/node.rb#10190
-class Prism::KeywordRestParameterNode < ::Prism::Node
- # Initialize a new KeywordRestParameterNode node.
- #
- # @return [KeywordRestParameterNode] a new instance of KeywordRestParameterNode
- #
- # source://prism//lib/prism/node.rb#10192
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: T.nilable(Symbol),
- name_loc: T.nilable(Prism::Location),
- operator_loc: Prism::Location
- ).void
- end
- def initialize(source, node_id, location, flags, name, name_loc, operator_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#10285
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#10203
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#10208
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#10218
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#10213
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol?, ?name_loc: Location?, ?operator_loc: Location) -> KeywordRestParameterNode
- #
- # source://prism//lib/prism/node.rb#10223
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: T.nilable(Symbol),
- name_loc: T.nilable(Prism::Location),
- operator_loc: Prism::Location
- ).returns(Prism::KeywordRestParameterNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#10208
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol?, name_loc: Location?, operator_loc: Location }
- #
- # source://prism//lib/prism/node.rb#10231
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#10269
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader name: Symbol?
- #
- # source://prism//lib/prism/node.rb#10241
- sig { returns(T.nilable(Symbol)) }
- def name; end
-
- # attr_reader name_loc: Location?
- #
- # source://prism//lib/prism/node.rb#10244
- sig { returns(T.nilable(Prism::Location)) }
- def name_loc; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#10264
- sig { returns(String) }
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#10257
- sig { returns(Prism::Location) }
- def operator_loc; end
-
- # def repeated_parameter?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#10236
- sig { returns(T::Boolean) }
- def repeated_parameter?; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#10274
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#10279
- def type; end
- end
-end
-
-# Represents using a lambda literal (not the lambda method call).
-#
-# ->(value) { value * 2 }
-# ^^^^^^^^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#10298
-class Prism::LambdaNode < ::Prism::Node
- # Initialize a new LambdaNode node.
- #
- # @return [LambdaNode] a new instance of LambdaNode
- #
- # source://prism//lib/prism/node.rb#10300
- def initialize(source, node_id, location, flags, locals, operator_loc, opening_loc, closing_loc, parameters, body); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#10411
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#10314
- def accept(visitor); end
-
- # attr_reader body: Prism::node?
- #
- # source://prism//lib/prism/node.rb#10377
- def body; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#10319
- def child_nodes; end
-
- # def closing: () -> String
- #
- # source://prism//lib/prism/node.rb#10390
- def closing; end
-
- # attr_reader closing_loc: Location
- #
- # source://prism//lib/prism/node.rb#10367
- def closing_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#10332
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#10324
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?locals: Array[Symbol], ?operator_loc: Location, ?opening_loc: Location, ?closing_loc: Location, ?parameters: Prism::node?, ?body: Prism::node?) -> LambdaNode
- #
- # source://prism//lib/prism/node.rb#10337
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), locals: T.unsafe(nil), operator_loc: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), parameters: T.unsafe(nil), body: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#10319
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, locals: Array[Symbol], operator_loc: Location, opening_loc: Location, closing_loc: Location, parameters: Prism::node?, body: Prism::node? }
- #
- # source://prism//lib/prism/node.rb#10345
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#10395
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader locals: Array[Symbol]
- #
- # source://prism//lib/prism/node.rb#10350
- def locals; end
-
- # def opening: () -> String
- #
- # source://prism//lib/prism/node.rb#10385
- def opening; end
-
- # attr_reader opening_loc: Location
- #
- # source://prism//lib/prism/node.rb#10360
- def opening_loc; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#10380
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#10353
- def operator_loc; end
-
- # attr_reader parameters: Prism::node?
- #
- # source://prism//lib/prism/node.rb#10374
- def parameters; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#10400
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#10405
- def type; end
- end
-end
-
-# This class is responsible for lexing the source using prism and then
-# converting those tokens to be compatible with Ripper. In the vast majority
-# of cases, this is a one-to-one mapping of the token type. Everything else
-# generally lines up. However, there are a few cases that require special
-# handling.
-#
-# source://prism//lib/prism/lex_compat.rb#12
-class Prism::LexCompat
- # @return [LexCompat] a new instance of LexCompat
- #
- # source://prism//lib/prism/lex_compat.rb#619
- def initialize(source, **options); end
-
- # Returns the value of attribute options.
- #
- # source://prism//lib/prism/lex_compat.rb#617
- def options; end
-
- # source://prism//lib/prism/lex_compat.rb#624
- def result; end
-
- # Returns the value of attribute source.
- #
- # source://prism//lib/prism/lex_compat.rb#617
- def source; end
-end
-
-# Ripper doesn't include the rest of the token in the event, so we need to
-# trim it down to just the content on the first line when comparing.
-#
-# source://prism//lib/prism/lex_compat.rb#230
-class Prism::LexCompat::EndContentToken < ::Prism::LexCompat::Token
- # source://prism//lib/prism/lex_compat.rb#231
- def ==(other); end
-end
-
-# A heredoc in this case is a list of tokens that belong to the body of the
-# heredoc that should be appended onto the list of tokens when the heredoc
-# closes.
-#
-# source://prism//lib/prism/lex_compat.rb#291
-module Prism::LexCompat::Heredoc
- class << self
- # Here we will split between the two types of heredocs and return the
- # object that will store their tokens.
- #
- # source://prism//lib/prism/lex_compat.rb#603
- def build(opening); end
- end
-end
-
-# Dash heredocs are a little more complicated. They are a list of tokens
-# that need to be split on "\\\n" to mimic Ripper's behavior. We also need
-# to keep track of the state that the heredoc was opened in.
-#
-# source://prism//lib/prism/lex_compat.rb#315
-class Prism::LexCompat::Heredoc::DashHeredoc
- # @return [DashHeredoc] a new instance of DashHeredoc
- #
- # source://prism//lib/prism/lex_compat.rb#318
- def initialize(split); end
-
- # source://prism//lib/prism/lex_compat.rb#323
- def <<(token); end
-
- # source://prism//lib/prism/lex_compat.rb#316
- def split; end
-
- # source://prism//lib/prism/lex_compat.rb#327
- def to_a; end
-
- # source://prism//lib/prism/lex_compat.rb#316
- def tokens; end
-end
-
-# Heredocs that are dedenting heredocs are a little more complicated.
-# Ripper outputs on_ignored_sp tokens for the whitespace that is being
-# removed from the output. prism only modifies the node itself and keeps
-# the token the same. This simplifies prism, but makes comparing against
-# Ripper much harder because there is a length mismatch.
-#
-# Fortunately, we already have to pull out the heredoc tokens in order to
-# insert them into the stream in the correct order. As such, we can do
-# some extra manipulation on the tokens to make them match Ripper's
-# output by mirroring the dedent logic that Ripper uses.
-#
-# source://prism//lib/prism/lex_compat.rb#374
-class Prism::LexCompat::Heredoc::DedentingHeredoc
- # @return [DedentingHeredoc] a new instance of DedentingHeredoc
- #
- # source://prism//lib/prism/lex_compat.rb#379
- def initialize; end
-
- # As tokens are coming in, we track the minimum amount of common leading
- # whitespace on plain string content tokens. This allows us to later
- # remove that amount of whitespace from the beginning of each line.
- #
- # source://prism//lib/prism/lex_compat.rb#390
- def <<(token); end
-
- # Returns the value of attribute dedent.
- #
- # source://prism//lib/prism/lex_compat.rb#377
- def dedent; end
-
- # Returns the value of attribute dedent_next.
- #
- # source://prism//lib/prism/lex_compat.rb#377
- def dedent_next; end
-
- # Returns the value of attribute embexpr_balance.
- #
- # source://prism//lib/prism/lex_compat.rb#377
- def embexpr_balance; end
-
- # source://prism//lib/prism/lex_compat.rb#427
- def to_a; end
-
- # Returns the value of attribute tokens.
- #
- # source://prism//lib/prism/lex_compat.rb#377
- def tokens; end
-end
-
-# source://prism//lib/prism/lex_compat.rb#375
-Prism::LexCompat::Heredoc::DedentingHeredoc::TAB_WIDTH = T.let(T.unsafe(nil), Integer)
-
-# Heredocs that are no dash or tilde heredocs are just a list of tokens.
-# We need to keep them around so that we can insert them in the correct
-# order back into the token stream and set the state of the last token to
-# the state that the heredoc was opened in.
-#
-# source://prism//lib/prism/lex_compat.rb#296
-class Prism::LexCompat::Heredoc::PlainHeredoc
- # @return [PlainHeredoc] a new instance of PlainHeredoc
- #
- # source://prism//lib/prism/lex_compat.rb#299
- def initialize; end
-
- # source://prism//lib/prism/lex_compat.rb#303
- def <<(token); end
-
- # source://prism//lib/prism/lex_compat.rb#307
- def to_a; end
-
- # source://prism//lib/prism/lex_compat.rb#297
- def tokens; end
-end
-
-# Ident tokens for the most part are exactly the same, except sometimes we
-# know an ident is a local when ripper doesn't (when they are introduced
-# through named captures in regular expressions). In that case we don't
-# compare the state.
-#
-# source://prism//lib/prism/lex_compat.rb#248
-class Prism::LexCompat::IdentToken < ::Prism::LexCompat::Token
- # source://prism//lib/prism/lex_compat.rb#249
- def ==(other); end
-end
-
-# Tokens where state should be ignored
-# used for :on_comment, :on_heredoc_end, :on_embexpr_end
-#
-# source://prism//lib/prism/lex_compat.rb#238
-class Prism::LexCompat::IgnoreStateToken < ::Prism::LexCompat::Token
- # source://prism//lib/prism/lex_compat.rb#239
- def ==(other); end
-end
-
-# Ignored newlines can occasionally have a LABEL state attached to them, so
-# we compare the state differently here.
-#
-# source://prism//lib/prism/lex_compat.rb#259
-class Prism::LexCompat::IgnoredNewlineToken < ::Prism::LexCompat::Token
- # source://prism//lib/prism/lex_compat.rb#260
- def ==(other); end
-end
-
-# If we have an identifier that follows a method name like:
-#
-# def foo bar
-#
-# then Ripper will mark bar as END|LABEL if there is a local in a parent
-# scope named bar because it hasn't pushed the local table yet. We do this
-# more accurately, so we need to allow comparing against both END and
-# END|LABEL.
-#
-# source://prism//lib/prism/lex_compat.rb#279
-class Prism::LexCompat::ParamToken < ::Prism::LexCompat::Token
- # source://prism//lib/prism/lex_compat.rb#280
- def ==(other); end
-end
-
-# This is a mapping of prism token types to Ripper token types. This is a
-# many-to-one mapping because we split up our token types, whereas Ripper
-# tends to group them.
-#
-# source://prism//lib/prism/lex_compat.rb#33
-Prism::LexCompat::RIPPER = T.let(T.unsafe(nil), Hash)
-
-# A result class specialized for holding tokens produced by the lexer.
-#
-# source://prism//lib/prism/lex_compat.rb#14
-class Prism::LexCompat::Result < ::Prism::Result
- # Create a new lex compat result object with the given values.
- #
- # @return [Result] a new instance of Result
- #
- # source://prism//lib/prism/lex_compat.rb#19
- def initialize(value, comments, magic_comments, data_loc, errors, warnings, source); end
-
- # Implement the hash pattern matching interface for Result.
- #
- # source://prism//lib/prism/lex_compat.rb#25
- def deconstruct_keys(keys); end
-
- # The list of tokens that were produced by the lexer.
- #
- # source://prism//lib/prism/lex_compat.rb#16
- def value; end
-end
-
-# When we produce tokens, we produce the same arrays that Ripper does.
-# However, we add a couple of convenience methods onto them to make them a
-# little easier to work with. We delegate all other methods to the array.
-#
-# source://prism//lib/prism/lex_compat.rb#204
-class Prism::LexCompat::Token < ::SimpleDelegator
- # The type of the token.
- #
- # source://prism//lib/prism/lex_compat.rb#213
- def event; end
-
- # The location of the token in the source.
- #
- # source://prism//lib/prism/lex_compat.rb#208
- def location; end
-
- # The state of the lexer when this token was produced.
- #
- # source://prism//lib/prism/lex_compat.rb#223
- def state; end
-
- # The slice of the source that this token represents.
- #
- # source://prism//lib/prism/lex_compat.rb#218
- def value; end
-end
-
-# This is a result specific to the `lex` and `lex_file` methods.
-#
-# source://prism//lib/prism/parse_result.rb#627
-class Prism::LexResult < ::Prism::Result
- # Create a new lex result object with the given values.
- #
- # @return [LexResult] a new instance of LexResult
- #
- # source://prism//lib/prism/parse_result.rb#632
- sig do
- params(
- value: T::Array[T.untyped],
- comments: T::Array[Prism::Comment],
- magic_comments: T::Array[Prism::MagicComment],
- data_loc: T.nilable(Prism::Location),
- errors: T::Array[Prism::ParseError],
- warnings: T::Array[Prism::ParseWarning],
- source: Prism::Source
- ).void
- end
- def initialize(value, comments, magic_comments, data_loc, errors, warnings, source); end
-
- # Implement the hash pattern matching interface for LexResult.
- #
- # source://prism//lib/prism/parse_result.rb#638
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- # The list of tokens that were parsed from the source code.
- #
- # source://prism//lib/prism/parse_result.rb#629
- sig { returns(T::Array[T.untyped]) }
- def value; end
-end
-
-# This is a class that wraps the Ripper lexer to produce almost exactly the
-# same tokens.
-#
-# source://prism//lib/prism/lex_compat.rb#872
-class Prism::LexRipper
- # @return [LexRipper] a new instance of LexRipper
- #
- # source://prism//lib/prism/lex_compat.rb#875
- def initialize(source); end
-
- # source://prism//lib/prism/lex_compat.rb#879
- def result; end
-
- # source://prism//lib/prism/lex_compat.rb#873
- def source; end
-
- private
-
- # source://prism//lib/prism/lex_compat.rb#913
- def lex(source); end
-end
-
-# Represents the use of the `&&=` operator for assignment to a local variable.
-#
-# target &&= value
-# ^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#10427
-class Prism::LocalVariableAndWriteNode < ::Prism::Node
- # Initialize a new LocalVariableAndWriteNode node.
- #
- # @return [LocalVariableAndWriteNode] a new instance of LocalVariableAndWriteNode
- #
- # source://prism//lib/prism/node.rb#10429
- def initialize(source, node_id, location, flags, name_loc, operator_loc, value, name, depth); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#10519
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#10442
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#10447
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#10457
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#10452
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name_loc: Location, ?operator_loc: Location, ?value: Prism::node, ?name: Symbol, ?depth: Integer) -> LocalVariableAndWriteNode
- #
- # source://prism//lib/prism/node.rb#10462
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), name: T.unsafe(nil), depth: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#10447
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name_loc: Location, operator_loc: Location, value: Prism::node, name: Symbol, depth: Integer }
- #
- # source://prism//lib/prism/node.rb#10470
- def deconstruct_keys(keys); end
-
- # attr_reader depth: Integer
- #
- # source://prism//lib/prism/node.rb#10495
- def depth; end
-
- # source://prism//lib/prism/desugar_compiler.rb#236
- def desugar; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#10503
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#10492
- def name; end
-
- # attr_reader name_loc: Location
- #
- # source://prism//lib/prism/node.rb#10475
- def name_loc; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#10498
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#10482
- def operator_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#10508
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#10489
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#10513
- def type; end
- end
-end
-
-# Represents assigning to a local variable using an operator that isn't `=`.
-#
-# target += value
-# ^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#10533
-class Prism::LocalVariableOperatorWriteNode < ::Prism::Node
- # Initialize a new LocalVariableOperatorWriteNode node.
- #
- # @return [LocalVariableOperatorWriteNode] a new instance of LocalVariableOperatorWriteNode
- #
- # source://prism//lib/prism/node.rb#10535
- def initialize(source, node_id, location, flags, name_loc, binary_operator_loc, value, name, binary_operator, depth); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#10624
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#10549
- def accept(visitor); end
-
- # attr_reader binary_operator: Symbol
- #
- # source://prism//lib/prism/node.rb#10602
- def binary_operator; end
-
- # attr_reader binary_operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#10589
- def binary_operator_loc; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#10554
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#10564
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#10559
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name_loc: Location, ?binary_operator_loc: Location, ?value: Prism::node, ?name: Symbol, ?binary_operator: Symbol, ?depth: Integer) -> LocalVariableOperatorWriteNode
- #
- # source://prism//lib/prism/node.rb#10569
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name_loc: T.unsafe(nil), binary_operator_loc: T.unsafe(nil), value: T.unsafe(nil), name: T.unsafe(nil), binary_operator: T.unsafe(nil), depth: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#10554
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name_loc: Location, binary_operator_loc: Location, value: Prism::node, name: Symbol, binary_operator: Symbol, depth: Integer }
- #
- # source://prism//lib/prism/node.rb#10577
- def deconstruct_keys(keys); end
-
- # attr_reader depth: Integer
- #
- # source://prism//lib/prism/node.rb#10605
- def depth; end
-
- # source://prism//lib/prism/desugar_compiler.rb#248
- def desugar; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#10608
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#10599
- def name; end
-
- # attr_reader name_loc: Location
- #
- # source://prism//lib/prism/node.rb#10582
- def name_loc; end
-
- # Returns the binary operator used to modify the receiver. This method is
- # deprecated in favor of #binary_operator.
- #
- # source://prism//lib/prism/node_ext.rb#451
- def operator; end
-
- # Returns the location of the binary operator used to modify the receiver.
- # This method is deprecated in favor of #binary_operator_loc.
- #
- # source://prism//lib/prism/node_ext.rb#458
- def operator_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#10613
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#10596
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#10618
- def type; end
- end
-end
-
-# Represents the use of the `||=` operator for assignment to a local variable.
-#
-# target ||= value
-# ^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#10639
-class Prism::LocalVariableOrWriteNode < ::Prism::Node
- # Initialize a new LocalVariableOrWriteNode node.
- #
- # @return [LocalVariableOrWriteNode] a new instance of LocalVariableOrWriteNode
- #
- # source://prism//lib/prism/node.rb#10641
- def initialize(source, node_id, location, flags, name_loc, operator_loc, value, name, depth); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#10731
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#10654
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#10659
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#10669
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#10664
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name_loc: Location, ?operator_loc: Location, ?value: Prism::node, ?name: Symbol, ?depth: Integer) -> LocalVariableOrWriteNode
- #
- # source://prism//lib/prism/node.rb#10674
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil), name: T.unsafe(nil), depth: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#10659
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name_loc: Location, operator_loc: Location, value: Prism::node, name: Symbol, depth: Integer }
- #
- # source://prism//lib/prism/node.rb#10682
- def deconstruct_keys(keys); end
-
- # attr_reader depth: Integer
- #
- # source://prism//lib/prism/node.rb#10707
- def depth; end
-
- # source://prism//lib/prism/desugar_compiler.rb#242
- def desugar; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#10715
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#10704
- def name; end
-
- # attr_reader name_loc: Location
- #
- # source://prism//lib/prism/node.rb#10687
- def name_loc; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#10710
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#10694
- def operator_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#10720
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#10701
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#10725
- def type; end
- end
-end
-
-# Represents reading a local variable. Note that this requires that a local variable of the same name has already been written to in the same scope, otherwise it is parsed as a method call.
-#
-# foo
-# ^^^
-#
-# source://prism//lib/prism/node.rb#10745
-class Prism::LocalVariableReadNode < ::Prism::Node
- # Initialize a new LocalVariableReadNode node.
- #
- # @return [LocalVariableReadNode] a new instance of LocalVariableReadNode
- #
- # source://prism//lib/prism/node.rb#10747
- def initialize(source, node_id, location, flags, name, depth); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#10826
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#10757
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#10762
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#10772
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#10767
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol, ?depth: Integer) -> LocalVariableReadNode
- #
- # source://prism//lib/prism/node.rb#10777
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), depth: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#10762
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol, depth: Integer }
- #
- # source://prism//lib/prism/node.rb#10785
- def deconstruct_keys(keys); end
-
- # The number of visible scopes that should be searched to find the origin of this local variable.
- #
- # foo = 1; foo # depth 0
- #
- # bar = 2; tap { bar } # depth 1
- #
- # The specific rules for calculating the depth may differ from individual Ruby implementations, as they are not specified by the language. For more information, see [the Prism documentation](https://github.com/ruby/prism/blob/main/docs/local_variable_depth.md).
- #
- # source://prism//lib/prism/node.rb#10807
- def depth; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#10810
- sig { override.returns(String) }
- def inspect; end
-
- # The name of the local variable, which is an [identifier](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#identifiers).
- #
- # x # name `:x`
- #
- # _Test # name `:_Test`
- #
- # Note that this can also be an underscore followed by a number for the default block parameters.
- #
- # _1 # name `:_1`
- #
- # source://prism//lib/prism/node.rb#10798
- def name; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#10815
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#10820
- def type; end
- end
-end
-
-# Represents writing to a local variable in a context that doesn't have an explicit value.
-#
-# foo, bar = baz
-# ^^^ ^^^
-#
-# source://prism//lib/prism/node.rb#10837
-class Prism::LocalVariableTargetNode < ::Prism::Node
- # Initialize a new LocalVariableTargetNode node.
- #
- # @return [LocalVariableTargetNode] a new instance of LocalVariableTargetNode
- #
- # source://prism//lib/prism/node.rb#10839
- def initialize(source, node_id, location, flags, name, depth); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#10904
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#10849
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#10854
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#10864
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#10859
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol, ?depth: Integer) -> LocalVariableTargetNode
- #
- # source://prism//lib/prism/node.rb#10869
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), depth: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#10854
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol, depth: Integer }
- #
- # source://prism//lib/prism/node.rb#10877
- def deconstruct_keys(keys); end
-
- # attr_reader depth: Integer
- #
- # source://prism//lib/prism/node.rb#10885
- def depth; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#10888
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#10882
- def name; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#10893
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#10898
- def type; end
- end
-end
-
-# Represents writing to a local variable.
-#
-# foo = 1
-# ^^^^^^^
-#
-# source://prism//lib/prism/node.rb#10915
-class Prism::LocalVariableWriteNode < ::Prism::Node
- # Initialize a new LocalVariableWriteNode node.
- #
- # @return [LocalVariableWriteNode] a new instance of LocalVariableWriteNode
- #
- # source://prism//lib/prism/node.rb#10917
- def initialize(source, node_id, location, flags, name, depth, name_loc, value, operator_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#11033
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#10930
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#10935
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#10945
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#10940
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol, ?depth: Integer, ?name_loc: Location, ?value: Prism::node, ?operator_loc: Location) -> LocalVariableWriteNode
- #
- # source://prism//lib/prism/node.rb#10950
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), depth: T.unsafe(nil), name_loc: T.unsafe(nil), value: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#10935
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol, depth: Integer, name_loc: Location, value: Prism::node, operator_loc: Location }
- #
- # source://prism//lib/prism/node.rb#10958
- def deconstruct_keys(keys); end
-
- # The number of semantic scopes we have to traverse to find the declaration of this variable.
- #
- # foo = 1 # depth 0
- #
- # tap { foo = 1 } # depth 1
- #
- # The specific rules for calculating the depth may differ from individual Ruby implementations, as they are not specified by the language. For more information, see [the Prism documentation](https://github.com/ruby/prism/blob/main/docs/local_variable_depth.md).
- #
- # source://prism//lib/prism/node.rb#10976
- def depth; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#11017
- sig { override.returns(String) }
- def inspect; end
-
- # The name of the local variable, which is an [identifier](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#identifiers).
- #
- # foo = :bar # name `:foo`
- #
- # abc = 123 # name `:abc`
- #
- # source://prism//lib/prism/node.rb#10967
- def name; end
-
- # The location of the variable name.
- #
- # foo = :bar
- # ^^^
- #
- # source://prism//lib/prism/node.rb#10982
- def name_loc; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#11012
- def operator; end
-
- # The location of the `=` operator.
- #
- # x = :y
- # ^
- #
- # source://prism//lib/prism/node.rb#11005
- def operator_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#11022
- sig { override.returns(Symbol) }
- def type; end
-
- # The value to write to the local variable. It can be any [non-void expression](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#non-void-expression).
- #
- # foo = :bar
- # ^^^^
- #
- # abc = 1234
- # ^^^^
- #
- # Note that since the name of a local variable is known before the value is parsed, it is valid for a local variable to appear within the value of its own write.
- #
- # foo = foo
- #
- # source://prism//lib/prism/node.rb#10999
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#11027
- def type; end
- end
-end
-
-# This represents a location in the source.
-#
-# source://prism//lib/prism/parse_result.rb#165
-class Prism::Location
- # Create a new location object with the given source, start byte offset, and
- # byte length.
- #
- # @return [Location] a new instance of Location
- #
- # source://prism//lib/prism/parse_result.rb#180
- sig { params(source: Prism::Source, start_offset: Integer, length: Integer).void }
- def initialize(source, start_offset, length); end
-
- # Returns true if the given other location is equal to this location.
- #
- # source://prism//lib/prism/parse_result.rb#344
- sig { params(other: T.untyped).returns(T::Boolean) }
- def ==(other); end
-
- # Join this location with the first occurrence of the string in the source
- # that occurs after this location on the same line, and return the new
- # location. This will raise an error if the string does not exist.
- #
- # source://prism//lib/prism/parse_result.rb#363
- sig { params(string: String).returns(Prism::Location) }
- def adjoin(string); end
-
- # Returns a new location that is the result of chopping off the last byte.
- #
- # source://prism//lib/prism/parse_result.rb#226
- sig { returns(Prism::Location) }
- def chop; end
-
- # Returns all comments that are associated with this location (both leading
- # and trailing comments).
- #
- # source://prism//lib/prism/parse_result.rb#216
- sig { returns(T::Array[Prism::Comment]) }
- def comments; end
-
- # Create a new location object with the given options.
- #
- # source://prism//lib/prism/parse_result.rb#221
- sig { params(source: Prism::Source, start_offset: Integer, length: Integer).returns(Prism::Location) }
- def copy(source: T.unsafe(nil), start_offset: T.unsafe(nil), length: T.unsafe(nil)); end
-
- # Implement the hash pattern matching interface for Location.
- #
- # source://prism//lib/prism/parse_result.rb#334
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- # The column number in characters where this location ends from the start of
- # the line.
- #
- # source://prism//lib/prism/parse_result.rb#323
- sig { returns(Integer) }
- def end_character_column; end
-
- # The character offset from the beginning of the source where this location
- # ends.
- #
- # source://prism//lib/prism/parse_result.rb#272
- sig { returns(Integer) }
- def end_character_offset; end
-
- # The column number in code units of the given encoding where this location
- # ends from the start of the line.
- #
- # source://prism//lib/prism/parse_result.rb#329
- sig { params(encoding: Encoding).returns(Integer) }
- def end_code_units_column(encoding = T.unsafe(nil)); end
-
- # The offset from the start of the file in code units of the given encoding.
- #
- # source://prism//lib/prism/parse_result.rb#277
- sig { params(encoding: Encoding).returns(Integer) }
- def end_code_units_offset(encoding = T.unsafe(nil)); end
-
- # The column number in bytes where this location ends from the start of the
- # line.
- #
- # source://prism//lib/prism/parse_result.rb#317
- sig { returns(Integer) }
- def end_column; end
-
- # The line number where this location ends.
- #
- # source://prism//lib/prism/parse_result.rb#293
- sig { returns(Integer) }
- def end_line; end
-
- # The byte offset from the beginning of the source where this location ends.
- #
- # source://prism//lib/prism/parse_result.rb#266
- sig { returns(Integer) }
- def end_offset; end
-
- # Returns a string representation of this location.
- #
- # source://prism//lib/prism/parse_result.rb#231
- sig { returns(String) }
- def inspect; end
-
- # Returns a new location that stretches from this location to the given
- # other location. Raises an error if this location is not before the other
- # location or if they don't share the same source.
- #
- # source://prism//lib/prism/parse_result.rb#353
- sig { params(other: Prism::Location).returns(Prism::Location) }
- def join(other); end
-
- # Attach a comment to the leading comments of this location.
- #
- # source://prism//lib/prism/parse_result.rb#199
- sig { params(comment: Prism::Comment).void }
- def leading_comment(comment); end
-
- # These are the comments that are associated with this location that exist
- # before the start of this location.
- #
- # source://prism//lib/prism/parse_result.rb#194
- sig { returns(T::Array[Prism::Comment]) }
- def leading_comments; end
-
- # The length of this location in bytes.
- #
- # source://prism//lib/prism/parse_result.rb#176
- sig { returns(Integer) }
- def length; end
-
- # Implement the pretty print interface for Location.
- #
- # source://prism//lib/prism/parse_result.rb#339
- sig { params(q: T.untyped).void }
- def pretty_print(q); end
-
- # The source code that this location represents.
- #
- # source://prism//lib/prism/parse_result.rb#241
- sig { returns(String) }
- def slice; end
-
- # The source code that this location represents starting from the beginning
- # of the line that this location starts on to the end of the line that this
- # location ends on.
- #
- # source://prism//lib/prism/parse_result.rb#248
- def slice_lines; end
-
- # Returns all of the lines of the source code associated with this location.
- #
- # source://prism//lib/prism/parse_result.rb#236
- sig { returns(T::Array[String]) }
- def source_lines; end
-
- # The column number in characters where this location ends from the start of
- # the line.
- #
- # source://prism//lib/prism/parse_result.rb#305
- sig { returns(Integer) }
- def start_character_column; end
-
- # The character offset from the beginning of the source where this location
- # starts.
- #
- # source://prism//lib/prism/parse_result.rb#256
- sig { returns(Integer) }
- def start_character_offset; end
-
- # The column number in code units of the given encoding where this location
- # starts from the start of the line.
- #
- # source://prism//lib/prism/parse_result.rb#311
- sig { params(encoding: Encoding).returns(Integer) }
- def start_code_units_column(encoding = T.unsafe(nil)); end
-
- # The offset from the start of the file in code units of the given encoding.
- #
- # source://prism//lib/prism/parse_result.rb#261
- sig { params(encoding: Encoding).returns(Integer) }
- def start_code_units_offset(encoding = T.unsafe(nil)); end
-
- # The column number in bytes where this location starts from the start of
- # the line.
- #
- # source://prism//lib/prism/parse_result.rb#299
- sig { returns(Integer) }
- def start_column; end
-
- # The line number where this location starts.
- #
- # source://prism//lib/prism/parse_result.rb#282
- sig { returns(Integer) }
- def start_line; end
-
- # The content of the line where this location starts before this location.
- #
- # source://prism//lib/prism/parse_result.rb#287
- sig { returns(String) }
- def start_line_slice; end
-
- # The byte offset from the beginning of the source where this location
- # starts.
- #
- # source://prism//lib/prism/parse_result.rb#173
- sig { returns(Integer) }
- def start_offset; end
-
- # Attach a comment to the trailing comments of this location.
- #
- # source://prism//lib/prism/parse_result.rb#210
- sig { params(comment: Prism::Comment).void }
- def trailing_comment(comment); end
-
- # These are the comments that are associated with this location that exist
- # after the end of this location.
- #
- # source://prism//lib/prism/parse_result.rb#205
- sig { returns(T::Array[Prism::Comment]) }
- def trailing_comments; end
-
- protected
-
- # A Source object that is used to determine more information from the given
- # offset and length.
- #
- # source://prism//lib/prism/parse_result.rb#168
- sig { returns(Prism::Source) }
- def source; end
-end
-
-# Flags for while and until loop nodes.
-#
-# source://prism//lib/prism/node.rb#16719
-module Prism::LoopFlags; end
-
-# a loop after a begin statement, so the body is executed first before the condition
-#
-# source://prism//lib/prism/node.rb#16721
-Prism::LoopFlags::BEGIN_MODIFIER = T.let(T.unsafe(nil), Integer)
-
-# This represents a magic comment that was encountered during parsing.
-#
-# source://prism//lib/prism/parse_result.rb#425
-class Prism::MagicComment
- # Create a new magic comment object with the given key and value locations.
- #
- # @return [MagicComment] a new instance of MagicComment
- #
- # source://prism//lib/prism/parse_result.rb#433
- sig { params(key_loc: Prism::Location, value_loc: Prism::Location).void }
- def initialize(key_loc, value_loc); end
-
- # Implement the hash pattern matching interface for MagicComment.
- #
- # source://prism//lib/prism/parse_result.rb#449
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- # Returns a string representation of this magic comment.
- #
- # source://prism//lib/prism/parse_result.rb#454
- sig { returns(String) }
- def inspect; end
-
- # Returns the key of the magic comment by slicing it from the source code.
- #
- # source://prism//lib/prism/parse_result.rb#439
- sig { returns(String) }
- def key; end
-
- # A Location object representing the location of the key in the source.
- #
- # source://prism//lib/prism/parse_result.rb#427
- sig { returns(Prism::Location) }
- def key_loc; end
-
- # Returns the value of the magic comment by slicing it from the source code.
- #
- # source://prism//lib/prism/parse_result.rb#444
- sig { returns(String) }
- def value; end
-
- # A Location object representing the location of the value in the source.
- #
- # source://prism//lib/prism/parse_result.rb#430
- sig { returns(Prism::Location) }
- def value_loc; end
-end
-
-# Represents a regular expression literal used in the predicate of a conditional to implicitly match against the last line read by an IO object.
-#
-# if /foo/i then end
-# ^^^^^^
-#
-# source://prism//lib/prism/node.rb#11047
-class Prism::MatchLastLineNode < ::Prism::Node
- include ::Prism::RegularExpressionOptions
-
- # Initialize a new MatchLastLineNode node.
- #
- # @return [MatchLastLineNode] a new instance of MatchLastLineNode
- #
- # source://prism//lib/prism/node.rb#11049
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- opening_loc: Prism::Location,
- content_loc: Prism::Location,
- closing_loc: Prism::Location,
- unescaped: String
- ).void
- end
- def initialize(source, node_id, location, flags, opening_loc, content_loc, closing_loc, unescaped); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#11204
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#11061
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def ascii_8bit?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#11119
- sig { returns(T::Boolean) }
- def ascii_8bit?; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#11066
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def closing: () -> String
- #
- # source://prism//lib/prism/node.rb#11183
- sig { returns(String) }
- def closing; end
-
- # attr_reader closing_loc: Location
- #
- # source://prism//lib/prism/node.rb#11163
- sig { returns(Prism::Location) }
- def closing_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#11076
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#11071
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def content: () -> String
- #
- # source://prism//lib/prism/node.rb#11178
- sig { returns(String) }
- def content; end
-
- # attr_reader content_loc: Location
- #
- # source://prism//lib/prism/node.rb#11156
- sig { returns(Prism::Location) }
- def content_loc; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?opening_loc: Location, ?content_loc: Location, ?closing_loc: Location, ?unescaped: String) -> MatchLastLineNode
- #
- # source://prism//lib/prism/node.rb#11081
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- opening_loc: Prism::Location,
- content_loc: Prism::Location,
- closing_loc: Prism::Location,
- unescaped: String
- ).returns(Prism::MatchLastLineNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), opening_loc: T.unsafe(nil), content_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), unescaped: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#11066
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, opening_loc: Location, content_loc: Location, closing_loc: Location, unescaped: String }
- #
- # source://prism//lib/prism/node.rb#11089
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- # def euc_jp?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#11114
- sig { returns(T::Boolean) }
- def euc_jp?; end
-
- # def extended?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#11099
- sig { returns(T::Boolean) }
- def extended?; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def forced_binary_encoding?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#11139
- sig { returns(T::Boolean) }
- def forced_binary_encoding?; end
-
- # def forced_us_ascii_encoding?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#11144
- sig { returns(T::Boolean) }
- def forced_us_ascii_encoding?; end
-
- # def forced_utf8_encoding?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#11134
- sig { returns(T::Boolean) }
- def forced_utf8_encoding?; end
-
- # def ignore_case?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#11094
- sig { returns(T::Boolean) }
- def ignore_case?; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#11188
- sig { override.returns(String) }
- def inspect; end
-
- # def multi_line?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#11104
- sig { returns(T::Boolean) }
- def multi_line?; end
-
- # def once?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#11109
- sig { returns(T::Boolean) }
- def once?; end
-
- # def opening: () -> String
- #
- # source://prism//lib/prism/node.rb#11173
- sig { returns(String) }
- def opening; end
-
- # attr_reader opening_loc: Location
- #
- # source://prism//lib/prism/node.rb#11149
- sig { returns(Prism::Location) }
- def opening_loc; end
-
- sig { returns(Integer) }
- def options; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#11193
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader unescaped: String
- #
- # source://prism//lib/prism/node.rb#11170
- sig { returns(String) }
- def unescaped; end
-
- # def utf_8?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#11129
- sig { returns(T::Boolean) }
- def utf_8?; end
-
- # def windows_31j?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#11124
- sig { returns(T::Boolean) }
- def windows_31j?; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#11198
- def type; end
- end
-end
-
-# Represents the use of the modifier `in` operator.
-#
-# foo in bar
-# ^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#11218
-class Prism::MatchPredicateNode < ::Prism::Node
- # Initialize a new MatchPredicateNode node.
- #
- # @return [MatchPredicateNode] a new instance of MatchPredicateNode
- #
- # source://prism//lib/prism/node.rb#11220
- def initialize(source, node_id, location, flags, value, pattern, operator_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#11298
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#11231
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#11236
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#11246
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#11241
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?value: Prism::node, ?pattern: Prism::node, ?operator_loc: Location) -> MatchPredicateNode
- #
- # source://prism//lib/prism/node.rb#11251
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), value: T.unsafe(nil), pattern: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#11236
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, value: Prism::node, pattern: Prism::node, operator_loc: Location }
- #
- # source://prism//lib/prism/node.rb#11259
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#11282
- sig { override.returns(String) }
- def inspect; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#11277
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#11270
- def operator_loc; end
-
- # attr_reader pattern: Prism::node
- #
- # source://prism//lib/prism/node.rb#11267
- def pattern; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#11287
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#11264
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#11292
- def type; end
- end
-end
-
-# Represents the use of the `=>` operator.
-#
-# foo => bar
-# ^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#11310
-class Prism::MatchRequiredNode < ::Prism::Node
- # Initialize a new MatchRequiredNode node.
- #
- # @return [MatchRequiredNode] a new instance of MatchRequiredNode
- #
- # source://prism//lib/prism/node.rb#11312
- def initialize(source, node_id, location, flags, value, pattern, operator_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#11390
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#11323
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#11328
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#11338
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#11333
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?value: Prism::node, ?pattern: Prism::node, ?operator_loc: Location) -> MatchRequiredNode
- #
- # source://prism//lib/prism/node.rb#11343
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), value: T.unsafe(nil), pattern: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#11328
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, value: Prism::node, pattern: Prism::node, operator_loc: Location }
- #
- # source://prism//lib/prism/node.rb#11351
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#11374
- sig { override.returns(String) }
- def inspect; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#11369
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#11362
- def operator_loc; end
-
- # attr_reader pattern: Prism::node
- #
- # source://prism//lib/prism/node.rb#11359
- def pattern; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#11379
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#11356
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#11384
- def type; end
- end
-end
-
-# Represents writing local variables using a regular expression match with named capture groups.
-#
-# /(?<foo>bar)/ =~ baz
-# ^^^^^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#11402
-class Prism::MatchWriteNode < ::Prism::Node
- # Initialize a new MatchWriteNode node.
- #
- # @return [MatchWriteNode] a new instance of MatchWriteNode
- #
- # source://prism//lib/prism/node.rb#11404
- def initialize(source, node_id, location, flags, call, targets); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#11469
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#11414
- def accept(visitor); end
-
- # attr_reader call: CallNode
- #
- # source://prism//lib/prism/node.rb#11447
- def call; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#11419
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#11429
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#11424
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?call: CallNode, ?targets: Array[LocalVariableTargetNode]) -> MatchWriteNode
- #
- # source://prism//lib/prism/node.rb#11434
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), call: T.unsafe(nil), targets: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#11419
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, call: CallNode, targets: Array[LocalVariableTargetNode] }
- #
- # source://prism//lib/prism/node.rb#11442
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#11453
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader targets: Array[LocalVariableTargetNode]
- #
- # source://prism//lib/prism/node.rb#11450
- def targets; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#11458
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#11463
- def type; end
- end
-end
-
-# Represents a node that is missing from the source and results in a syntax error.
-#
-# source://prism//lib/prism/node.rb#11478
-class Prism::MissingNode < ::Prism::Node
- # Initialize a new MissingNode node.
- #
- # @return [MissingNode] a new instance of MissingNode
- #
- # source://prism//lib/prism/node.rb#11480
- def initialize(source, node_id, location, flags); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#11537
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#11488
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#11493
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#11503
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#11498
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer) -> MissingNode
- #
- # source://prism//lib/prism/node.rb#11508
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#11493
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location }
- #
- # source://prism//lib/prism/node.rb#11516
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#11521
- sig { override.returns(String) }
- def inspect; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#11526
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#11531
- def type; end
- end
-end
-
-# Represents a module declaration involving the `module` keyword.
-#
-# module Foo end
-# ^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#11546
-class Prism::ModuleNode < ::Prism::Node
- # Initialize a new ModuleNode node.
- #
- # @return [ModuleNode] a new instance of ModuleNode
- #
- # source://prism//lib/prism/node.rb#11548
- def initialize(source, node_id, location, flags, locals, module_keyword_loc, constant_path, body, end_keyword_loc, name); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#11650
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#11562
- def accept(visitor); end
-
- # attr_reader body: Prism::node?
- #
- # source://prism//lib/prism/node.rb#11611
- def body; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#11567
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#11580
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#11572
- def compact_child_nodes; end
-
- # attr_reader constant_path: Prism::node
- #
- # source://prism//lib/prism/node.rb#11608
- def constant_path; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?locals: Array[Symbol], ?module_keyword_loc: Location, ?constant_path: Prism::node, ?body: Prism::node?, ?end_keyword_loc: Location, ?name: Symbol) -> ModuleNode
- #
- # source://prism//lib/prism/node.rb#11585
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), locals: T.unsafe(nil), module_keyword_loc: T.unsafe(nil), constant_path: T.unsafe(nil), body: T.unsafe(nil), end_keyword_loc: T.unsafe(nil), name: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#11567
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, locals: Array[Symbol], module_keyword_loc: Location, constant_path: Prism::node, body: Prism::node?, end_keyword_loc: Location, name: Symbol }
- #
- # source://prism//lib/prism/node.rb#11593
- def deconstruct_keys(keys); end
-
- # def end_keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#11629
- def end_keyword; end
-
- # attr_reader end_keyword_loc: Location
- #
- # source://prism//lib/prism/node.rb#11614
- def end_keyword_loc; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#11634
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader locals: Array[Symbol]
- #
- # source://prism//lib/prism/node.rb#11598
- def locals; end
-
- # def module_keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#11624
- def module_keyword; end
-
- # attr_reader module_keyword_loc: Location
- #
- # source://prism//lib/prism/node.rb#11601
- def module_keyword_loc; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#11621
- def name; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#11639
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#11644
- def type; end
- end
-end
-
-# Represents a multi-target expression.
-#
-# a, (b, c) = 1, 2, 3
-# ^^^^^^
-#
-# This can be a part of `MultiWriteNode` as above, or the target of a `for` loop
-#
-# for a, b in [[1, 2], [3, 4]]
-# ^^^^
-#
-# source://prism//lib/prism/node.rb#11671
-class Prism::MultiTargetNode < ::Prism::Node
- # Initialize a new MultiTargetNode node.
- #
- # @return [MultiTargetNode] a new instance of MultiTargetNode
- #
- # source://prism//lib/prism/node.rb#11673
- def initialize(source, node_id, location, flags, lefts, rest, rights, lparen_loc, rparen_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#11814
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#11686
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#11691
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#11705
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#11696
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?lefts: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode | RequiredParameterNode | BackReferenceReadNode | NumberedReferenceReadNode], ?rest: ImplicitRestNode | SplatNode | nil, ?rights: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode | RequiredParameterNode | BackReferenceReadNode], ?lparen_loc: Location?, ?rparen_loc: Location?) -> MultiTargetNode
- #
- # source://prism//lib/prism/node.rb#11710
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), lefts: T.unsafe(nil), rest: T.unsafe(nil), rights: T.unsafe(nil), lparen_loc: T.unsafe(nil), rparen_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#11691
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, lefts: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode | RequiredParameterNode | BackReferenceReadNode | NumberedReferenceReadNode], rest: ImplicitRestNode | SplatNode | nil, rights: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode | RequiredParameterNode | BackReferenceReadNode], lparen_loc: Location?, rparen_loc: Location? }
- #
- # source://prism//lib/prism/node.rb#11718
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#11798
- sig { override.returns(String) }
- def inspect; end
-
- # Represents the targets expressions before a splat node.
- #
- # a, (b, c, *) = 1, 2, 3, 4, 5
- # ^^^^
- #
- # The splat node can be absent, in that case all target expressions are in the left field.
- #
- # a, (b, c) = 1, 2, 3, 4, 5
- # ^^^^
- #
- # source://prism//lib/prism/node.rb#11731
- def lefts; end
-
- # def lparen: () -> String?
- #
- # source://prism//lib/prism/node.rb#11788
- def lparen; end
-
- # The location of the opening parenthesis.
- #
- # a, (b, c) = 1, 2, 3
- # ^
- #
- # source://prism//lib/prism/node.rb#11759
- def lparen_loc; end
-
- # Represents a splat node in the target expression.
- #
- # a, (b, *c) = 1, 2, 3, 4
- # ^^
- #
- # The variable can be empty, this results in a `SplatNode` with a `nil` expression field.
- #
- # a, (b, *) = 1, 2, 3, 4
- # ^
- #
- # If the `*` is omitted, the field will containt an `ImplicitRestNode`
- #
- # a, (b,) = 1, 2, 3, 4
- # ^
- #
- # source://prism//lib/prism/node.rb#11747
- def rest; end
-
- # Represents the targets expressions after a splat node.
- #
- # a, (*, b, c) = 1, 2, 3, 4, 5
- # ^^^^
- #
- # source://prism//lib/prism/node.rb#11753
- def rights; end
-
- # def rparen: () -> String?
- #
- # source://prism//lib/prism/node.rb#11793
- def rparen; end
-
- # The location of the closing parenthesis.
- #
- # a, (b, c) = 1, 2, 3
- # ^
- #
- # source://prism//lib/prism/node.rb#11775
- def rparen_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#11803
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#11808
- def type; end
- end
-end
-
-# Represents a write to a multi-target expression.
-#
-# a, b, c = 1, 2, 3
-# ^^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#11830
-class Prism::MultiWriteNode < ::Prism::Node
- # Initialize a new MultiWriteNode node.
- #
- # @return [MultiWriteNode] a new instance of MultiWriteNode
- #
- # source://prism//lib/prism/node.rb#11832
- def initialize(source, node_id, location, flags, lefts, rest, rights, lparen_loc, rparen_loc, operator_loc, value); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#11997
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#11847
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#11852
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#11867
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#11857
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?lefts: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode], ?rest: ImplicitRestNode | SplatNode | nil, ?rights: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode], ?lparen_loc: Location?, ?rparen_loc: Location?, ?operator_loc: Location, ?value: Prism::node) -> MultiWriteNode
- #
- # source://prism//lib/prism/node.rb#11872
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), lefts: T.unsafe(nil), rest: T.unsafe(nil), rights: T.unsafe(nil), lparen_loc: T.unsafe(nil), rparen_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#11852
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, lefts: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode], rest: ImplicitRestNode | SplatNode | nil, rights: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode], lparen_loc: Location?, rparen_loc: Location?, operator_loc: Location, value: Prism::node }
- #
- # source://prism//lib/prism/node.rb#11880
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#11981
- sig { override.returns(String) }
- def inspect; end
-
- # Represents the targets expressions before a splat node.
- #
- # a, b, * = 1, 2, 3, 4, 5
- # ^^^^
- #
- # The splat node can be absent, in that case all target expressions are in the left field.
- #
- # a, b, c = 1, 2, 3, 4, 5
- # ^^^^^^^
- #
- # source://prism//lib/prism/node.rb#11893
- def lefts; end
-
- # def lparen: () -> String?
- #
- # source://prism//lib/prism/node.rb#11966
- def lparen; end
-
- # The location of the opening parenthesis.
- #
- # (a, b, c) = 1, 2, 3
- # ^
- #
- # source://prism//lib/prism/node.rb#11921
- def lparen_loc; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#11976
- def operator; end
-
- # The location of the operator.
- #
- # a, b, c = 1, 2, 3
- # ^
- #
- # source://prism//lib/prism/node.rb#11953
- def operator_loc; end
-
- # Represents a splat node in the target expression.
- #
- # a, b, *c = 1, 2, 3, 4
- # ^^
- #
- # The variable can be empty, this results in a `SplatNode` with a `nil` expression field.
- #
- # a, b, * = 1, 2, 3, 4
- # ^
- #
- # If the `*` is omitted, the field will containt an `ImplicitRestNode`
- #
- # a, b, = 1, 2, 3, 4
- # ^
- #
- # source://prism//lib/prism/node.rb#11909
- def rest; end
-
- # Represents the targets expressions after a splat node.
- #
- # a, *, b, c = 1, 2, 3, 4, 5
- # ^^^^
- #
- # source://prism//lib/prism/node.rb#11915
- def rights; end
-
- # def rparen: () -> String?
- #
- # source://prism//lib/prism/node.rb#11971
- def rparen; end
-
- # The location of the closing parenthesis.
- #
- # (a, b, c) = 1, 2, 3
- # ^
- #
- # source://prism//lib/prism/node.rb#11937
- def rparen_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#11986
- sig { override.returns(Symbol) }
- def type; end
-
- # The value to write to the targets. It can be any [non-void expression](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#non-void-expression).
- #
- # a, b, c = 1, 2, 3
- # ^^^^^^^
- #
- # source://prism//lib/prism/node.rb#11963
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#11991
- def type; end
- end
-end
-
-# This visitor walks through the tree and copies each node as it is being
-# visited. This is useful for consumers that want to mutate the tree, as you
-# can change subtrees in place without effecting the rest of the tree.
-#
-# source://prism//lib/prism/mutation_compiler.rb#13
-class Prism::MutationCompiler < ::Prism::Compiler
- # Copy a AliasGlobalVariableNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#15
- def visit_alias_global_variable_node(node); end
-
- # Copy a AliasMethodNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#20
- def visit_alias_method_node(node); end
-
- # Copy a AlternationPatternNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#25
- def visit_alternation_pattern_node(node); end
-
- # Copy a AndNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#30
- def visit_and_node(node); end
-
- # Copy a ArgumentsNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#35
- def visit_arguments_node(node); end
-
- # Copy a ArrayNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#40
- def visit_array_node(node); end
-
- # Copy a ArrayPatternNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#45
- def visit_array_pattern_node(node); end
-
- # Copy a AssocNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#50
- def visit_assoc_node(node); end
-
- # Copy a AssocSplatNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#55
- def visit_assoc_splat_node(node); end
-
- # Copy a BackReferenceReadNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#60
- def visit_back_reference_read_node(node); end
-
- # Copy a BeginNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#65
- def visit_begin_node(node); end
-
- # Copy a BlockArgumentNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#70
- def visit_block_argument_node(node); end
-
- # Copy a BlockLocalVariableNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#75
- def visit_block_local_variable_node(node); end
-
- # Copy a BlockNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#80
- def visit_block_node(node); end
-
- # Copy a BlockParameterNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#85
- def visit_block_parameter_node(node); end
-
- # Copy a BlockParametersNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#90
- def visit_block_parameters_node(node); end
-
- # Copy a BreakNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#95
- def visit_break_node(node); end
-
- # Copy a CallAndWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#100
- def visit_call_and_write_node(node); end
-
- # Copy a CallNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#105
- def visit_call_node(node); end
-
- # Copy a CallOperatorWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#110
- def visit_call_operator_write_node(node); end
-
- # Copy a CallOrWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#115
- def visit_call_or_write_node(node); end
-
- # Copy a CallTargetNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#120
- def visit_call_target_node(node); end
-
- # Copy a CapturePatternNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#125
- def visit_capture_pattern_node(node); end
-
- # Copy a CaseMatchNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#130
- def visit_case_match_node(node); end
-
- # Copy a CaseNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#135
- def visit_case_node(node); end
-
- # Copy a ClassNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#140
- def visit_class_node(node); end
-
- # Copy a ClassVariableAndWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#145
- def visit_class_variable_and_write_node(node); end
-
- # Copy a ClassVariableOperatorWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#150
- def visit_class_variable_operator_write_node(node); end
-
- # Copy a ClassVariableOrWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#155
- def visit_class_variable_or_write_node(node); end
-
- # Copy a ClassVariableReadNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#160
- def visit_class_variable_read_node(node); end
-
- # Copy a ClassVariableTargetNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#165
- def visit_class_variable_target_node(node); end
-
- # Copy a ClassVariableWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#170
- def visit_class_variable_write_node(node); end
-
- # Copy a ConstantAndWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#175
- def visit_constant_and_write_node(node); end
-
- # Copy a ConstantOperatorWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#180
- def visit_constant_operator_write_node(node); end
-
- # Copy a ConstantOrWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#185
- def visit_constant_or_write_node(node); end
-
- # Copy a ConstantPathAndWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#190
- def visit_constant_path_and_write_node(node); end
-
- # Copy a ConstantPathNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#195
- def visit_constant_path_node(node); end
-
- # Copy a ConstantPathOperatorWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#200
- def visit_constant_path_operator_write_node(node); end
-
- # Copy a ConstantPathOrWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#205
- def visit_constant_path_or_write_node(node); end
-
- # Copy a ConstantPathTargetNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#210
- def visit_constant_path_target_node(node); end
-
- # Copy a ConstantPathWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#215
- def visit_constant_path_write_node(node); end
-
- # Copy a ConstantReadNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#220
- def visit_constant_read_node(node); end
-
- # Copy a ConstantTargetNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#225
- def visit_constant_target_node(node); end
-
- # Copy a ConstantWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#230
- def visit_constant_write_node(node); end
-
- # Copy a DefNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#235
- def visit_def_node(node); end
-
- # Copy a DefinedNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#240
- def visit_defined_node(node); end
-
- # Copy a ElseNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#245
- def visit_else_node(node); end
-
- # Copy a EmbeddedStatementsNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#250
- def visit_embedded_statements_node(node); end
-
- # Copy a EmbeddedVariableNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#255
- def visit_embedded_variable_node(node); end
-
- # Copy a EnsureNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#260
- def visit_ensure_node(node); end
-
- # Copy a FalseNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#265
- def visit_false_node(node); end
-
- # Copy a FindPatternNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#270
- def visit_find_pattern_node(node); end
-
- # Copy a FlipFlopNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#275
- def visit_flip_flop_node(node); end
-
- # Copy a FloatNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#280
- def visit_float_node(node); end
-
- # Copy a ForNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#285
- def visit_for_node(node); end
-
- # Copy a ForwardingArgumentsNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#290
- def visit_forwarding_arguments_node(node); end
-
- # Copy a ForwardingParameterNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#295
- def visit_forwarding_parameter_node(node); end
-
- # Copy a ForwardingSuperNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#300
- def visit_forwarding_super_node(node); end
-
- # Copy a GlobalVariableAndWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#305
- def visit_global_variable_and_write_node(node); end
-
- # Copy a GlobalVariableOperatorWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#310
- def visit_global_variable_operator_write_node(node); end
-
- # Copy a GlobalVariableOrWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#315
- def visit_global_variable_or_write_node(node); end
-
- # Copy a GlobalVariableReadNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#320
- def visit_global_variable_read_node(node); end
-
- # Copy a GlobalVariableTargetNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#325
- def visit_global_variable_target_node(node); end
-
- # Copy a GlobalVariableWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#330
- def visit_global_variable_write_node(node); end
-
- # Copy a HashNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#335
- def visit_hash_node(node); end
-
- # Copy a HashPatternNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#340
- def visit_hash_pattern_node(node); end
-
- # Copy a IfNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#345
- def visit_if_node(node); end
-
- # Copy a ImaginaryNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#350
- def visit_imaginary_node(node); end
-
- # Copy a ImplicitNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#355
- def visit_implicit_node(node); end
-
- # Copy a ImplicitRestNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#360
- def visit_implicit_rest_node(node); end
-
- # Copy a InNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#365
- def visit_in_node(node); end
-
- # Copy a IndexAndWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#370
- def visit_index_and_write_node(node); end
-
- # Copy a IndexOperatorWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#375
- def visit_index_operator_write_node(node); end
-
- # Copy a IndexOrWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#380
- def visit_index_or_write_node(node); end
-
- # Copy a IndexTargetNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#385
- def visit_index_target_node(node); end
-
- # Copy a InstanceVariableAndWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#390
- def visit_instance_variable_and_write_node(node); end
-
- # Copy a InstanceVariableOperatorWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#395
- def visit_instance_variable_operator_write_node(node); end
-
- # Copy a InstanceVariableOrWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#400
- def visit_instance_variable_or_write_node(node); end
-
- # Copy a InstanceVariableReadNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#405
- def visit_instance_variable_read_node(node); end
-
- # Copy a InstanceVariableTargetNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#410
- def visit_instance_variable_target_node(node); end
-
- # Copy a InstanceVariableWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#415
- def visit_instance_variable_write_node(node); end
-
- # Copy a IntegerNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#420
- def visit_integer_node(node); end
-
- # Copy a InterpolatedMatchLastLineNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#425
- def visit_interpolated_match_last_line_node(node); end
-
- # Copy a InterpolatedRegularExpressionNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#430
- def visit_interpolated_regular_expression_node(node); end
-
- # Copy a InterpolatedStringNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#435
- def visit_interpolated_string_node(node); end
-
- # Copy a InterpolatedSymbolNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#440
- def visit_interpolated_symbol_node(node); end
-
- # Copy a InterpolatedXStringNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#445
- def visit_interpolated_x_string_node(node); end
-
- # Copy a ItLocalVariableReadNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#450
- def visit_it_local_variable_read_node(node); end
-
- # Copy a ItParametersNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#455
- def visit_it_parameters_node(node); end
-
- # Copy a KeywordHashNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#460
- def visit_keyword_hash_node(node); end
-
- # Copy a KeywordRestParameterNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#465
- def visit_keyword_rest_parameter_node(node); end
-
- # Copy a LambdaNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#470
- def visit_lambda_node(node); end
-
- # Copy a LocalVariableAndWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#475
- def visit_local_variable_and_write_node(node); end
-
- # Copy a LocalVariableOperatorWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#480
- def visit_local_variable_operator_write_node(node); end
-
- # Copy a LocalVariableOrWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#485
- def visit_local_variable_or_write_node(node); end
-
- # Copy a LocalVariableReadNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#490
- def visit_local_variable_read_node(node); end
-
- # Copy a LocalVariableTargetNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#495
- def visit_local_variable_target_node(node); end
-
- # Copy a LocalVariableWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#500
- def visit_local_variable_write_node(node); end
-
- # Copy a MatchLastLineNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#505
- def visit_match_last_line_node(node); end
-
- # Copy a MatchPredicateNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#510
- def visit_match_predicate_node(node); end
-
- # Copy a MatchRequiredNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#515
- def visit_match_required_node(node); end
-
- # Copy a MatchWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#520
- def visit_match_write_node(node); end
-
- # Copy a MissingNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#525
- def visit_missing_node(node); end
-
- # Copy a ModuleNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#530
- def visit_module_node(node); end
-
- # Copy a MultiTargetNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#535
- def visit_multi_target_node(node); end
-
- # Copy a MultiWriteNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#540
- def visit_multi_write_node(node); end
-
- # Copy a NextNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#545
- def visit_next_node(node); end
-
- # Copy a NilNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#550
- def visit_nil_node(node); end
-
- # Copy a NoKeywordsParameterNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#555
- def visit_no_keywords_parameter_node(node); end
-
- # Copy a NumberedParametersNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#560
- def visit_numbered_parameters_node(node); end
-
- # Copy a NumberedReferenceReadNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#565
- def visit_numbered_reference_read_node(node); end
-
- # Copy a OptionalKeywordParameterNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#570
- def visit_optional_keyword_parameter_node(node); end
-
- # Copy a OptionalParameterNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#575
- def visit_optional_parameter_node(node); end
-
- # Copy a OrNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#580
- def visit_or_node(node); end
-
- # Copy a ParametersNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#585
- def visit_parameters_node(node); end
-
- # Copy a ParenthesesNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#590
- def visit_parentheses_node(node); end
-
- # Copy a PinnedExpressionNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#595
- def visit_pinned_expression_node(node); end
-
- # Copy a PinnedVariableNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#600
- def visit_pinned_variable_node(node); end
-
- # Copy a PostExecutionNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#605
- def visit_post_execution_node(node); end
-
- # Copy a PreExecutionNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#610
- def visit_pre_execution_node(node); end
-
- # Copy a ProgramNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#615
- def visit_program_node(node); end
-
- # Copy a RangeNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#620
- def visit_range_node(node); end
-
- # Copy a RationalNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#625
- def visit_rational_node(node); end
-
- # Copy a RedoNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#630
- def visit_redo_node(node); end
-
- # Copy a RegularExpressionNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#635
- def visit_regular_expression_node(node); end
-
- # Copy a RequiredKeywordParameterNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#640
- def visit_required_keyword_parameter_node(node); end
-
- # Copy a RequiredParameterNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#645
- def visit_required_parameter_node(node); end
-
- # Copy a RescueModifierNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#650
- def visit_rescue_modifier_node(node); end
-
- # Copy a RescueNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#655
- def visit_rescue_node(node); end
-
- # Copy a RestParameterNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#660
- def visit_rest_parameter_node(node); end
-
- # Copy a RetryNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#665
- def visit_retry_node(node); end
-
- # Copy a ReturnNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#670
- def visit_return_node(node); end
-
- # Copy a SelfNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#675
- def visit_self_node(node); end
-
- # Copy a ShareableConstantNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#680
- def visit_shareable_constant_node(node); end
-
- # Copy a SingletonClassNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#685
- def visit_singleton_class_node(node); end
-
- # Copy a SourceEncodingNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#690
- def visit_source_encoding_node(node); end
-
- # Copy a SourceFileNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#695
- def visit_source_file_node(node); end
-
- # Copy a SourceLineNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#700
- def visit_source_line_node(node); end
-
- # Copy a SplatNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#705
- def visit_splat_node(node); end
-
- # Copy a StatementsNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#710
- def visit_statements_node(node); end
-
- # Copy a StringNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#715
- def visit_string_node(node); end
-
- # Copy a SuperNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#720
- def visit_super_node(node); end
-
- # Copy a SymbolNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#725
- def visit_symbol_node(node); end
-
- # Copy a TrueNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#730
- def visit_true_node(node); end
-
- # Copy a UndefNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#735
- def visit_undef_node(node); end
-
- # Copy a UnlessNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#740
- def visit_unless_node(node); end
-
- # Copy a UntilNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#745
- def visit_until_node(node); end
-
- # Copy a WhenNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#750
- def visit_when_node(node); end
-
- # Copy a WhileNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#755
- def visit_while_node(node); end
-
- # Copy a XStringNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#760
- def visit_x_string_node(node); end
-
- # Copy a YieldNode node
- #
- # source://prism//lib/prism/mutation_compiler.rb#765
- def visit_yield_node(node); end
-end
-
-# Represents the use of the `next` keyword.
-#
-# next 1
-# ^^^^^^
-#
-# source://prism//lib/prism/node.rb#12015
-class Prism::NextNode < ::Prism::Node
- # Initialize a new NextNode node.
- #
- # @return [NextNode] a new instance of NextNode
- #
- # source://prism//lib/prism/node.rb#12017
- def initialize(source, node_id, location, flags, arguments, keyword_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#12093
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#12027
- def accept(visitor); end
-
- # attr_reader arguments: ArgumentsNode?
- #
- # source://prism//lib/prism/node.rb#12062
- def arguments; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#12032
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#12044
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#12037
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?arguments: ArgumentsNode?, ?keyword_loc: Location) -> NextNode
- #
- # source://prism//lib/prism/node.rb#12049
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), arguments: T.unsafe(nil), keyword_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#12032
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, arguments: ArgumentsNode?, keyword_loc: Location }
- #
- # source://prism//lib/prism/node.rb#12057
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#12077
- sig { override.returns(String) }
- def inspect; end
-
- # def keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#12072
- def keyword; end
-
- # attr_reader keyword_loc: Location
- #
- # source://prism//lib/prism/node.rb#12065
- def keyword_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#12082
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#12087
- def type; end
- end
-end
-
-# Represents the use of the `nil` keyword.
-#
-# nil
-# ^^^
-#
-# source://prism//lib/prism/node.rb#12104
-class Prism::NilNode < ::Prism::Node
- # Initialize a new NilNode node.
- #
- # @return [NilNode] a new instance of NilNode
- #
- # source://prism//lib/prism/node.rb#12106
- def initialize(source, node_id, location, flags); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#12163
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#12114
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#12119
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#12129
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#12124
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer) -> NilNode
- #
- # source://prism//lib/prism/node.rb#12134
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#12119
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location }
- #
- # source://prism//lib/prism/node.rb#12142
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#12147
- sig { override.returns(String) }
- def inspect; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#12152
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#12157
- def type; end
- end
-end
-
-# Represents the use of `**nil` inside method arguments.
-#
-# def a(**nil)
-# ^^^^^
-# end
-#
-# source://prism//lib/prism/node.rb#12173
-class Prism::NoKeywordsParameterNode < ::Prism::Node
- # Initialize a new NoKeywordsParameterNode node.
- #
- # @return [NoKeywordsParameterNode] a new instance of NoKeywordsParameterNode
- #
- # source://prism//lib/prism/node.rb#12175
- def initialize(source, node_id, location, flags, operator_loc, keyword_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#12258
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#12185
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#12190
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#12200
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#12195
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?operator_loc: Location, ?keyword_loc: Location) -> NoKeywordsParameterNode
- #
- # source://prism//lib/prism/node.rb#12205
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), operator_loc: T.unsafe(nil), keyword_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#12190
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, operator_loc: Location, keyword_loc: Location }
- #
- # source://prism//lib/prism/node.rb#12213
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#12242
- sig { override.returns(String) }
- def inspect; end
-
- # def keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#12237
- def keyword; end
-
- # attr_reader keyword_loc: Location
- #
- # source://prism//lib/prism/node.rb#12225
- def keyword_loc; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#12232
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#12218
- def operator_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#12247
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#12252
- def type; end
- end
-end
-
-# This represents a node in the tree. It is the parent class of all of the
-# various node types.
-#
-# source://prism//lib/prism/node.rb#12
-class Prism::Node
- abstract!
-
- # Accepts a visitor and calls back into the specialized visit function.
- #
- # @raise [NoMethodError]
- #
- # source://prism//lib/prism/node.rb#169
- sig { abstract.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # Returns the first node that matches the given block when visited in a
- # depth-first search. This is useful for finding a node that matches a
- # particular condition.
- #
- # node.breadth_first_search { |node| node.node_id == node_id }
- #
- # source://prism//lib/prism/node.rb#139
- sig { params(block: T.proc.params(node: Prism::Node).returns(T::Boolean)).returns(T.nilable(Prism::Node)) }
- def breadth_first_search(&block); end
-
- # Returns an array of child nodes, including `nil`s in the place of optional
- # nodes that were not present.
- #
- # @raise [NoMethodError]
- #
- # source://prism//lib/prism/node.rb#175
- sig { abstract.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # Returns an array of child nodes and locations that could potentially have
- # comments attached to them.
- #
- # @raise [NoMethodError]
- #
- # source://prism//lib/prism/node.rb#189
- sig { abstract.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # Returns an array of child nodes, excluding any `nil`s in the place of
- # optional nodes that were not present.
- #
- # @raise [NoMethodError]
- #
- # source://prism//lib/prism/node.rb#183
- sig { abstract.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # Returns an array of child nodes, including `nil`s in the place of optional
- # nodes that were not present.
- #
- # @raise [NoMethodError]
- #
- # source://prism//lib/prism/node.rb#175
- sig { abstract.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # source://prism//lib/prism/node_ext.rb#7
- def deprecated(*replacements); end
-
- # The end offset of the node in the source. This method is effectively a
- # delegate method to the location object.
- #
- # source://prism//lib/prism/node.rb#40
- sig { returns(Integer) }
- def end_offset; end
-
- sig { abstract.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # Returns a string representation of the node.
- #
- # @raise [NoMethodError]
- #
- # source://prism//lib/prism/node.rb#194
- sig { abstract.returns(String) }
- def inspect; end
-
- # A Location instance that represents the location of this node in the
- # source.
- #
- # source://prism//lib/prism/node.rb#25
- sig { returns(Prism::Location) }
- def location; end
-
- # Returns true if the node has the newline flag set.
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#72
- sig { returns(T::Boolean) }
- def newline?; end
-
- # source://prism//lib/prism/parse_result/newlines.rb#69
- def newline_flag!(lines); end
-
- # @return [Boolean]
- #
- # source://prism//lib/prism/parse_result/newlines.rb#65
- def newline_flag?; end
-
- # A unique identifier for this node. This is used in a very specific
- # use case where you want to keep around a reference to a node without
- # having to keep around the syntax tree in memory. This unique identifier
- # will be consistent across multiple parses of the same source code.
- #
- # source://prism//lib/prism/node.rb#21
- sig { returns(Integer) }
- def node_id; end
-
- # Similar to inspect, but respects the current level of indentation given by
- # the pretty print object.
- #
- # source://prism//lib/prism/node.rb#83
- sig { params(q: T.untyped).void }
- def pretty_print(q); end
-
- # Returns all of the lines of the source code associated with this node.
- # An alias for source_lines, used to mimic the API from
- # RubyVM::AbstractSyntaxTree to make it easier to migrate.
- #
- # source://prism//lib/prism/node.rb#46
- sig { returns(T::Array[String]) }
- def script_lines; end
-
- # Slice the location of the node from the source.
- #
- # source://prism//lib/prism/node.rb#55
- sig { returns(String) }
- def slice; end
-
- # Slice the location of the node from the source, starting at the beginning
- # of the line that the location starts on, ending at the end of the line
- # that the location ends on.
- #
- # source://prism//lib/prism/node.rb#62
- sig { returns(String) }
- def slice_lines; end
-
- # Returns all of the lines of the source code associated with this node.
- #
- # source://prism//lib/prism/node.rb#46
- sig { returns(T::Array[String]) }
- def source_lines; end
-
- # The start offset of the node in the source. This method is effectively a
- # delegate method to the location object.
- #
- # source://prism//lib/prism/node.rb#33
- sig { returns(Integer) }
- def start_offset; end
-
- # Returns true if the node has the static literal flag set.
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#77
- sig { returns(T::Boolean) }
- def static_literal?; end
-
- # Convert this node into a graphviz dot graph string.
- #
- # source://prism//lib/prism/node.rb#91
- sig { returns(String) }
- def to_dot; end
-
- # Returns a list of nodes that are descendants of this node that contain the
- # given line and column. This is useful for locating a node that is selected
- # based on the line and column of the source code.
- #
- # Important to note is that the column given to this method should be in
- # bytes, as opposed to characters or code units.
- #
- # source://prism//lib/prism/node.rb#102
- sig { params(line: Integer, column: Integer).returns(T::Array[Prism::Node]) }
- def tunnel(line, column); end
-
- # Sometimes you want to check an instance of a node against a list of
- # classes to see what kind of behavior to perform. Usually this is done by
- # calling `[cls1, cls2].include?(node.class)` or putting the node into a
- # case statement and doing `case node; when cls1; when cls2; end`. Both of
- # these approaches are relatively slow because of the constant lookups,
- # method calls, and/or array allocations.
- #
- # Instead, you can call #type, which will return to you a symbol that you
- # can use for comparison. This is faster than the other approaches because
- # it uses a single integer comparison, but also because if you're on CRuby
- # you can take advantage of the fact that case statements with all symbol
- # keys will use a jump table.
- #
- # @raise [NoMethodError]
- #
- # source://prism//lib/prism/node.rb#210
- sig { abstract.returns(Symbol) }
- def type; end
-
- protected
-
- # An bitset of flags for this node. There are certain flags that are common
- # for all nodes, and then some nodes have specific flags.
- #
- # source://prism//lib/prism/node.rb#68
- sig { returns(Integer) }
- def flags; end
-
- private
-
- # A pointer to the source that this node was created from.
- #
- # source://prism//lib/prism/node.rb#14
- sig { returns(Prism::Source) }
- def source; end
-
- class << self
- # Returns a list of the fields that exist for this node class. Fields
- # describe the structure of the node. This kind of reflection is useful for
- # things like recursively visiting each node _and_ field in the tree.
- #
- # @raise [NoMethodError]
- #
- # source://prism//lib/prism/node.rb#153
- def fields; end
-
- # Similar to #type, this method returns a symbol that you can use for
- # splitting on the type of the node without having to do a long === chain.
- # Note that like #type, it will still be slower than using == for a single
- # class, but should be faster in a case statement or an array comparison.
- #
- # @raise [NoMethodError]
- #
- # source://prism//lib/prism/node.rb#218
- def type; end
- end
-end
-
-# The flags that are common to all nodes.
-#
-# source://prism//lib/prism/node.rb#16812
-module Prism::NodeFlags; end
-
-# A flag to indicate that the node is a candidate to emit a :line event
-# through tracepoint when compiled.
-#
-# source://prism//lib/prism/node.rb#16815
-Prism::NodeFlags::NEWLINE = T.let(T.unsafe(nil), Integer)
-
-# A flag to indicate that the value that the node represents is a value that
-# can be determined at parse-time.
-#
-# source://prism//lib/prism/node.rb#16819
-Prism::NodeFlags::STATIC_LITERAL = T.let(T.unsafe(nil), Integer)
-
-# Represents an implicit set of parameters through the use of numbered parameters within a block or lambda.
-#
-# -> { _1 + _2 }
-# ^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#12269
-class Prism::NumberedParametersNode < ::Prism::Node
- # Initialize a new NumberedParametersNode node.
- #
- # @return [NumberedParametersNode] a new instance of NumberedParametersNode
- #
- # source://prism//lib/prism/node.rb#12271
- def initialize(source, node_id, location, flags, maximum); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#12332
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#12280
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#12285
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#12295
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#12290
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?maximum: Integer) -> NumberedParametersNode
- #
- # source://prism//lib/prism/node.rb#12300
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), maximum: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#12285
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, maximum: Integer }
- #
- # source://prism//lib/prism/node.rb#12308
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#12316
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader maximum: Integer
- #
- # source://prism//lib/prism/node.rb#12313
- def maximum; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#12321
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#12326
- def type; end
- end
-end
-
-# Represents reading a numbered reference to a capture in the previous match.
-#
-# $1
-# ^^
-#
-# source://prism//lib/prism/node.rb#12342
-class Prism::NumberedReferenceReadNode < ::Prism::Node
- # Initialize a new NumberedReferenceReadNode node.
- #
- # @return [NumberedReferenceReadNode] a new instance of NumberedReferenceReadNode
- #
- # source://prism//lib/prism/node.rb#12344
- def initialize(source, node_id, location, flags, number); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#12411
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#12353
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#12358
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#12368
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#12363
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?number: Integer) -> NumberedReferenceReadNode
- #
- # source://prism//lib/prism/node.rb#12373
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), number: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#12358
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, number: Integer }
- #
- # source://prism//lib/prism/node.rb#12381
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#12395
- sig { override.returns(String) }
- def inspect; end
-
- # The (1-indexed, from the left) number of the capture group. Numbered references that are too large result in this value being `0`.
- #
- # $1 # number `1`
- #
- # $5432 # number `5432`
- #
- # $4294967296 # number `0`
- #
- # source://prism//lib/prism/node.rb#12392
- def number; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#12400
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#12405
- def type; end
- end
-end
-
-# Represents an optional keyword parameter to a method, block, or lambda definition.
-#
-# def a(b: 1)
-# ^^^^
-# end
-#
-# source://prism//lib/prism/node.rb#12422
-class Prism::OptionalKeywordParameterNode < ::Prism::Node
- # Initialize a new OptionalKeywordParameterNode node.
- #
- # @return [OptionalKeywordParameterNode] a new instance of OptionalKeywordParameterNode
- #
- # source://prism//lib/prism/node.rb#12424
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol,
- name_loc: Prism::Location,
- value: Prism::Node
- ).void
- end
- def initialize(source, node_id, location, flags, name, name_loc, value); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#12502
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#12435
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#12440
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#12450
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#12445
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol, ?name_loc: Location, ?value: Prism::node) -> OptionalKeywordParameterNode
- #
- # source://prism//lib/prism/node.rb#12455
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol,
- name_loc: Prism::Location,
- value: Prism::Node
- ).returns(Prism::OptionalKeywordParameterNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#12440
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol, name_loc: Location, value: Prism::node }
- #
- # source://prism//lib/prism/node.rb#12463
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#12486
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#12473
- sig { returns(Symbol) }
- def name; end
-
- # attr_reader name_loc: Location
- #
- # source://prism//lib/prism/node.rb#12476
- sig { returns(Prism::Location) }
- def name_loc; end
-
- # def repeated_parameter?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#12468
- sig { returns(T::Boolean) }
- def repeated_parameter?; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#12491
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#12483
- sig { returns(Prism::Node) }
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#12496
- def type; end
- end
-end
-
-# Represents an optional parameter to a method, block, or lambda definition.
-#
-# def a(b = 1)
-# ^^^^^
-# end
-#
-# source://prism//lib/prism/node.rb#12516
-class Prism::OptionalParameterNode < ::Prism::Node
- # Initialize a new OptionalParameterNode node.
- #
- # @return [OptionalParameterNode] a new instance of OptionalParameterNode
- #
- # source://prism//lib/prism/node.rb#12518
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol,
- name_loc: Prism::Location,
- operator_loc: Prism::Location,
- value: Prism::Node
- ).void
- end
- def initialize(source, node_id, location, flags, name, name_loc, operator_loc, value); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#12609
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#12530
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#12535
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#12545
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#12540
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol, ?name_loc: Location, ?operator_loc: Location, ?value: Prism::node) -> OptionalParameterNode
- #
- # source://prism//lib/prism/node.rb#12550
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol,
- name_loc: Prism::Location,
- operator_loc: Prism::Location,
- value: Prism::Node
- ).returns(Prism::OptionalParameterNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), value: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#12535
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol, name_loc: Location, operator_loc: Location, value: Prism::node }
- #
- # source://prism//lib/prism/node.rb#12558
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#12593
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#12568
- sig { returns(Symbol) }
- def name; end
-
- # attr_reader name_loc: Location
- #
- # source://prism//lib/prism/node.rb#12571
- sig { returns(Prism::Location) }
- def name_loc; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#12588
- sig { returns(String) }
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#12578
- sig { returns(Prism::Location) }
- def operator_loc; end
-
- # def repeated_parameter?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#12563
- sig { returns(T::Boolean) }
- def repeated_parameter?; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#12598
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader value: Prism::node
- #
- # source://prism//lib/prism/node.rb#12585
- sig { returns(Prism::Node) }
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#12603
- def type; end
- end
-end
-
-# Represents the use of the `||` operator or the `or` keyword.
-#
-# left or right
-# ^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#12623
-class Prism::OrNode < ::Prism::Node
- # Initialize a new OrNode node.
- #
- # @return [OrNode] a new instance of OrNode
- #
- # source://prism//lib/prism/node.rb#12625
- def initialize(source, node_id, location, flags, left, right, operator_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#12718
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#12636
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#12641
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#12651
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#12646
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?left: Prism::node, ?right: Prism::node, ?operator_loc: Location) -> OrNode
- #
- # source://prism//lib/prism/node.rb#12656
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), left: T.unsafe(nil), right: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#12641
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, left: Prism::node, right: Prism::node, operator_loc: Location }
- #
- # source://prism//lib/prism/node.rb#12664
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#12702
- sig { override.returns(String) }
- def inspect; end
-
- # Represents the left side of the expression. It can be any [non-void expression](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#non-void-expression).
- #
- # left or right
- # ^^^^
- #
- # 1 || 2
- # ^
- #
- # source://prism//lib/prism/node.rb#12675
- def left; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#12697
- def operator; end
-
- # The location of the `or` keyword or the `||` operator.
- #
- # left or right
- # ^^
- #
- # source://prism//lib/prism/node.rb#12690
- def operator_loc; end
-
- # Represents the right side of the expression. It can be any [non-void expression](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#non-void-expression).
- #
- # left || right
- # ^^^^^
- #
- # 1 or 2
- # ^
- #
- # source://prism//lib/prism/node.rb#12684
- def right; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#12707
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#12712
- def type; end
- end
-end
-
-# A parser for the pack template language.
-#
-# source://prism//lib/prism/pack.rb#6
-module Prism::Pack
- class << self
- def parse(_arg0, _arg1, _arg2); end
- end
-end
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::AGNOSTIC_ENDIAN = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::BACK = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::BER = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::BIG_ENDIAN = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::COMMENT = T.let(T.unsafe(nil), Symbol)
-
-# A directive in the pack template language.
-#
-# source://prism//lib/prism/pack.rb#60
-class Prism::Pack::Directive
- # Initialize a new directive with the given values.
- #
- # @return [Directive] a new instance of Directive
- #
- # source://prism//lib/prism/pack.rb#89
- def initialize(version, variant, source, type, signed, endian, size, length_type, length); end
-
- # Provide a human-readable description of the directive.
- #
- # source://prism//lib/prism/pack.rb#131
- def describe; end
-
- # The type of endianness of the directive.
- #
- # source://prism//lib/prism/pack.rb#77
- def endian; end
-
- # The length of this directive (used for integers).
- #
- # source://prism//lib/prism/pack.rb#86
- def length; end
-
- # The length type of this directive (used for integers).
- #
- # source://prism//lib/prism/pack.rb#83
- def length_type; end
-
- # The type of signedness of the directive.
- #
- # source://prism//lib/prism/pack.rb#74
- def signed; end
-
- # The size of the directive.
- #
- # source://prism//lib/prism/pack.rb#80
- def size; end
-
- # A byteslice of the source string that this directive represents.
- #
- # source://prism//lib/prism/pack.rb#68
- def source; end
-
- # The type of the directive.
- #
- # source://prism//lib/prism/pack.rb#71
- def type; end
-
- # A symbol representing whether or not we are packing or unpacking.
- #
- # source://prism//lib/prism/pack.rb#65
- def variant; end
-
- # A symbol representing the version of Ruby.
- #
- # source://prism//lib/prism/pack.rb#62
- def version; end
-end
-
-# The descriptions of the various types of endianness.
-#
-# source://prism//lib/prism/pack.rb#102
-Prism::Pack::Directive::ENDIAN_DESCRIPTIONS = T.let(T.unsafe(nil), Hash)
-
-# The descriptions of the various types of signedness.
-#
-# source://prism//lib/prism/pack.rb#111
-Prism::Pack::Directive::SIGNED_DESCRIPTIONS = T.let(T.unsafe(nil), Hash)
-
-# The descriptions of the various types of sizes.
-#
-# source://prism//lib/prism/pack.rb#118
-Prism::Pack::Directive::SIZE_DESCRIPTIONS = T.let(T.unsafe(nil), Hash)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::ENDIAN_NA = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::FLOAT = T.let(T.unsafe(nil), Symbol)
-
-# The result of parsing a pack template.
-#
-# source://prism//lib/prism/pack.rb#198
-class Prism::Pack::Format
- # Create a new Format with the given directives and encoding.
- #
- # @return [Format] a new instance of Format
- #
- # source://prism//lib/prism/pack.rb#206
- def initialize(directives, encoding); end
-
- # Provide a human-readable description of the format.
- #
- # source://prism//lib/prism/pack.rb#212
- def describe; end
-
- # A list of the directives in the template.
- #
- # source://prism//lib/prism/pack.rb#200
- def directives; end
-
- # The encoding of the template.
- #
- # source://prism//lib/prism/pack.rb#203
- def encoding; end
-end
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::INTEGER = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::LENGTH_FIXED = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::LENGTH_MAX = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::LENGTH_NA = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::LENGTH_RELATIVE = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::LITTLE_ENDIAN = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::MOVE = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::NATIVE_ENDIAN = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::NULL = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::SIGNED = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::SIGNED_NA = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::SIZE_16 = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::SIZE_32 = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::SIZE_64 = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::SIZE_8 = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::SIZE_INT = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::SIZE_LONG = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::SIZE_LONG_LONG = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::SIZE_NA = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::SIZE_P = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::SIZE_SHORT = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::SPACE = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::STRING_BASE64 = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::STRING_FIXED = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::STRING_HEX_HIGH = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::STRING_HEX_LOW = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::STRING_LSB = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::STRING_MIME = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::STRING_MSB = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::STRING_NULL_PADDED = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::STRING_NULL_TERMINATED = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::STRING_POINTER = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::STRING_SPACE_PADDED = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::STRING_UU = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::UNSIGNED = T.let(T.unsafe(nil), Symbol)
-
-# source://prism//lib/prism/pack.rb#56
-Prism::Pack::UTF8 = T.let(T.unsafe(nil), Symbol)
-
-# Flags for parameter nodes.
-#
-# source://prism//lib/prism/node.rb#16725
-module Prism::ParameterFlags; end
-
-# a parameter name that has been repeated in the method signature
-#
-# source://prism//lib/prism/node.rb#16727
-Prism::ParameterFlags::REPEATED_PARAMETER = T.let(T.unsafe(nil), Integer)
-
-# Represents the list of parameters on a method, block, or lambda definition.
-#
-# def a(b, c, d)
-# ^^^^^^^
-# end
-#
-# source://prism//lib/prism/node.rb#12731
-class Prism::ParametersNode < ::Prism::Node
- # Initialize a new ParametersNode node.
- #
- # @return [ParametersNode] a new instance of ParametersNode
- #
- # source://prism//lib/prism/node.rb#12733
- def initialize(source, node_id, location, flags, requireds, optionals, rest, posts, keywords, keyword_rest, block); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#12826
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#12748
- def accept(visitor); end
-
- # attr_reader block: BlockParameterNode?
- #
- # source://prism//lib/prism/node.rb#12807
- def block; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#12753
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#12771
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#12758
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?requireds: Array[RequiredParameterNode | MultiTargetNode], ?optionals: Array[OptionalParameterNode], ?rest: RestParameterNode | ImplicitRestNode | nil, ?posts: Array[RequiredParameterNode | MultiTargetNode | KeywordRestParameterNode | NoKeywordsParameterNode | ForwardingParameterNode], ?keywords: Array[RequiredKeywordParameterNode | OptionalKeywordParameterNode], ?keyword_rest: KeywordRestParameterNode | ForwardingParameterNode | NoKeywordsParameterNode | nil, ?block: BlockParameterNode?) -> ParametersNode
- #
- # source://prism//lib/prism/node.rb#12776
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), requireds: T.unsafe(nil), optionals: T.unsafe(nil), rest: T.unsafe(nil), posts: T.unsafe(nil), keywords: T.unsafe(nil), keyword_rest: T.unsafe(nil), block: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#12753
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, requireds: Array[RequiredParameterNode | MultiTargetNode], optionals: Array[OptionalParameterNode], rest: RestParameterNode | ImplicitRestNode | nil, posts: Array[RequiredParameterNode | MultiTargetNode | KeywordRestParameterNode | NoKeywordsParameterNode | ForwardingParameterNode], keywords: Array[RequiredKeywordParameterNode | OptionalKeywordParameterNode], keyword_rest: KeywordRestParameterNode | ForwardingParameterNode | NoKeywordsParameterNode | nil, block: BlockParameterNode? }
- #
- # source://prism//lib/prism/node.rb#12784
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#12810
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader keyword_rest: KeywordRestParameterNode | ForwardingParameterNode | NoKeywordsParameterNode | nil
- #
- # source://prism//lib/prism/node.rb#12804
- def keyword_rest; end
-
- # attr_reader keywords: Array[RequiredKeywordParameterNode | OptionalKeywordParameterNode]
- #
- # source://prism//lib/prism/node.rb#12801
- def keywords; end
-
- # attr_reader optionals: Array[OptionalParameterNode]
- #
- # source://prism//lib/prism/node.rb#12792
- def optionals; end
-
- # attr_reader posts: Array[RequiredParameterNode | MultiTargetNode | KeywordRestParameterNode | NoKeywordsParameterNode | ForwardingParameterNode]
- #
- # source://prism//lib/prism/node.rb#12798
- def posts; end
-
- # attr_reader requireds: Array[RequiredParameterNode | MultiTargetNode]
- #
- # source://prism//lib/prism/node.rb#12789
- def requireds; end
-
- # attr_reader rest: RestParameterNode | ImplicitRestNode | nil
- #
- # source://prism//lib/prism/node.rb#12795
- def rest; end
-
- # Mirrors the Method#parameters method.
- #
- # source://prism//lib/prism/node_ext.rb#269
- sig { returns(T::Array[T.any([Symbol, Symbol], [Symbol])]) }
- def signature; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#12815
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#12820
- def type; end
- end
-end
-
-# Represents a parenthesized expression
-#
-# (10 + 34)
-# ^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#12846
-class Prism::ParenthesesNode < ::Prism::Node
- # Initialize a new ParenthesesNode node.
- #
- # @return [ParenthesesNode] a new instance of ParenthesesNode
- #
- # source://prism//lib/prism/node.rb#12848
- def initialize(source, node_id, location, flags, body, opening_loc, closing_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#12937
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#12859
- def accept(visitor); end
-
- # attr_reader body: Prism::node?
- #
- # source://prism//lib/prism/node.rb#12894
- def body; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#12864
- def child_nodes; end
-
- # def closing: () -> String
- #
- # source://prism//lib/prism/node.rb#12916
- def closing; end
-
- # attr_reader closing_loc: Location
- #
- # source://prism//lib/prism/node.rb#12904
- def closing_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#12876
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#12869
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?body: Prism::node?, ?opening_loc: Location, ?closing_loc: Location) -> ParenthesesNode
- #
- # source://prism//lib/prism/node.rb#12881
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), body: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#12864
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, body: Prism::node?, opening_loc: Location, closing_loc: Location }
- #
- # source://prism//lib/prism/node.rb#12889
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#12921
- sig { override.returns(String) }
- def inspect; end
-
- # source://prism//lib/prism/parse_result/newlines.rb#85
- def newline_flag!(lines); end
-
- # def opening: () -> String
- #
- # source://prism//lib/prism/node.rb#12911
- def opening; end
-
- # attr_reader opening_loc: Location
- #
- # source://prism//lib/prism/node.rb#12897
- def opening_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#12926
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#12931
- def type; end
- end
-end
-
-# This represents an error that was encountered during parsing.
-#
-# source://prism//lib/prism/parse_result.rb#460
-class Prism::ParseError
- # Create a new error object with the given message and location.
- #
- # @return [ParseError] a new instance of ParseError
- #
- # source://prism//lib/prism/parse_result.rb#475
- sig { params(type: Symbol, message: String, location: Prism::Location, level: Symbol).void }
- def initialize(type, message, location, level); end
-
- # Implement the hash pattern matching interface for ParseError.
- #
- # source://prism//lib/prism/parse_result.rb#483
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- # Returns a string representation of this error.
- #
- # source://prism//lib/prism/parse_result.rb#488
- sig { returns(String) }
- def inspect; end
-
- # The level of this error.
- #
- # source://prism//lib/prism/parse_result.rb#472
- sig { returns(Symbol) }
- def level; end
-
- # A Location object representing the location of this error in the source.
- #
- # source://prism//lib/prism/parse_result.rb#469
- sig { returns(Prism::Location) }
- def location; end
-
- # The message associated with this error.
- #
- # source://prism//lib/prism/parse_result.rb#466
- sig { returns(String) }
- def message; end
-
- # The type of error. This is an _internal_ symbol that is used for
- # communicating with translation layers. It is not meant to be public API.
- #
- # source://prism//lib/prism/parse_result.rb#463
- sig { returns(Symbol) }
- def type; end
-end
-
-# This is a result specific to the `parse_lex` and `parse_lex_file` methods.
-#
-# source://prism//lib/prism/parse_result.rb#644
-class Prism::ParseLexResult < ::Prism::Result
- # Create a new parse lex result object with the given values.
- #
- # @return [ParseLexResult] a new instance of ParseLexResult
- #
- # source://prism//lib/prism/parse_result.rb#650
- sig do
- params(
- value: [Prism::ProgramNode, T::Array[T.untyped]],
- comments: T::Array[Prism::Comment],
- magic_comments: T::Array[Prism::MagicComment],
- data_loc: T.nilable(Prism::Location),
- errors: T::Array[Prism::ParseError],
- warnings: T::Array[Prism::ParseWarning],
- source: Prism::Source
- ).void
- end
- def initialize(value, comments, magic_comments, data_loc, errors, warnings, source); end
-
- # Implement the hash pattern matching interface for ParseLexResult.
- #
- # source://prism//lib/prism/parse_result.rb#656
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- # A tuple of the syntax tree and the list of tokens that were parsed from
- # the source code.
- #
- # source://prism//lib/prism/parse_result.rb#647
- sig { returns([Prism::ProgramNode, T::Array[T.untyped]]) }
- def value; end
-end
-
-# This is a result specific to the `parse` and `parse_file` methods.
-#
-# source://prism//lib/prism/parse_result.rb#585
-class Prism::ParseResult < ::Prism::Result
- # Create a new parse result object with the given values.
- #
- # @return [ParseResult] a new instance of ParseResult
- #
- # source://prism//lib/prism/parse_result.rb#598
- sig do
- params(
- value: Prism::ProgramNode,
- comments: T::Array[Prism::Comment],
- magic_comments: T::Array[Prism::MagicComment],
- data_loc: T.nilable(Prism::Location),
- errors: T::Array[Prism::ParseError],
- warnings: T::Array[Prism::ParseWarning],
- source: Prism::Source
- ).void
- end
- def initialize(value, comments, magic_comments, data_loc, errors, warnings, source); end
-
- # Attach the list of comments to their respective locations in the tree.
- #
- # source://prism//lib/prism/parse_result.rb#609
- def attach_comments!; end
-
- # Implement the hash pattern matching interface for ParseResult.
- #
- # source://prism//lib/prism/parse_result.rb#604
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- # Returns a string representation of the syntax tree with the errors
- # displayed inline.
- #
- # source://prism//lib/prism/parse_result.rb#621
- def errors_format; end
-
- # Walk the tree and mark nodes that are on a new line, loosely emulating
- # the behavior of CRuby's `:line` tracepoint event.
- #
- # source://prism//lib/prism/parse_result.rb#615
- def mark_newlines!; end
-
- # The syntax tree that was parsed from the source code.
- #
- # source://prism//lib/prism/parse_result.rb#595
- sig { returns(Prism::ProgramNode) }
- def value; end
-end
-
-# When we've parsed the source, we have both the syntax tree and the list of
-# comments that we found in the source. This class is responsible for
-# walking the tree and finding the nearest location to attach each comment.
-#
-# It does this by first finding the nearest locations to each comment.
-# Locations can either come from nodes directly or from location fields on
-# nodes. For example, a `ClassNode` has an overall location encompassing the
-# entire class, but it also has a location for the `class` keyword.
-#
-# Once the nearest locations are found, it determines which one to attach
-# to. If it's a trailing comment (a comment on the same line as other source
-# code), it will favor attaching to the nearest location that occurs before
-# the comment. Otherwise it will favor attaching to the nearest location
-# that is after the comment.
-#
-# source://prism//lib/prism/parse_result/comments.rb#19
-class Prism::ParseResult::Comments
- # Create a new Comments object that will attach comments to the given
- # parse result.
- #
- # @return [Comments] a new instance of Comments
- #
- # source://prism//lib/prism/parse_result/comments.rb#86
- def initialize(parse_result); end
-
- # Attach the comments to their respective locations in the tree by
- # mutating the parse result.
- #
- # source://prism//lib/prism/parse_result/comments.rb#92
- def attach!; end
-
- # The parse result that we are attaching comments to.
- #
- # source://prism//lib/prism/parse_result/comments.rb#82
- def parse_result; end
-
- private
-
- # Responsible for finding the nearest targets to the given comment within
- # the context of the given encapsulating node.
- #
- # source://prism//lib/prism/parse_result/comments.rb#119
- def nearest_targets(node, comment); end
-end
-
-# A target for attaching comments that is based on a location field on a
-# node. For example, the `end` token of a ClassNode.
-#
-# source://prism//lib/prism/parse_result/comments.rb#53
-class Prism::ParseResult::Comments::LocationTarget
- # @return [LocationTarget] a new instance of LocationTarget
- #
- # source://prism//lib/prism/parse_result/comments.rb#56
- def initialize(location); end
-
- # @return [Boolean]
- #
- # source://prism//lib/prism/parse_result/comments.rb#68
- def encloses?(comment); end
-
- # source://prism//lib/prism/parse_result/comments.rb#64
- def end_offset; end
-
- # source://prism//lib/prism/parse_result/comments.rb#72
- def leading_comment(comment); end
-
- # source://prism//lib/prism/parse_result/comments.rb#54
- def location; end
-
- # source://prism//lib/prism/parse_result/comments.rb#60
- def start_offset; end
-
- # source://prism//lib/prism/parse_result/comments.rb#76
- def trailing_comment(comment); end
-end
-
-# A target for attaching comments that is based on a specific node's
-# location.
-#
-# source://prism//lib/prism/parse_result/comments.rb#22
-class Prism::ParseResult::Comments::NodeTarget
- # @return [NodeTarget] a new instance of NodeTarget
- #
- # source://prism//lib/prism/parse_result/comments.rb#25
- def initialize(node); end
-
- # @return [Boolean]
- #
- # source://prism//lib/prism/parse_result/comments.rb#37
- def encloses?(comment); end
-
- # source://prism//lib/prism/parse_result/comments.rb#33
- def end_offset; end
-
- # source://prism//lib/prism/parse_result/comments.rb#42
- def leading_comment(comment); end
-
- # source://prism//lib/prism/parse_result/comments.rb#23
- def node; end
-
- # source://prism//lib/prism/parse_result/comments.rb#29
- def start_offset; end
-
- # source://prism//lib/prism/parse_result/comments.rb#46
- def trailing_comment(comment); end
-end
-
-# An object to represent the set of errors on a parse result. This object
-# can be used to format the errors in a human-readable way.
-#
-# source://prism//lib/prism/parse_result/errors.rb#9
-class Prism::ParseResult::Errors
- # Initialize a new set of errors from the given parse result.
- #
- # @return [Errors] a new instance of Errors
- #
- # source://prism//lib/prism/parse_result/errors.rb#14
- def initialize(parse_result); end
-
- # Formats the errors in a human-readable way and return them as a string.
- #
- # source://prism//lib/prism/parse_result/errors.rb#19
- def format; end
-
- # The parse result that contains the errors.
- #
- # source://prism//lib/prism/parse_result/errors.rb#11
- def parse_result; end
-end
-
-# The :line tracepoint event gets fired whenever the Ruby VM encounters an
-# expression on a new line. The types of expressions that can trigger this
-# event are:
-#
-# * if statements
-# * unless statements
-# * nodes that are children of statements lists
-#
-# In order to keep track of the newlines, we have a list of offsets that
-# come back from the parser. We assign these offsets to the first nodes that
-# we find in the tree that are on those lines.
-#
-# Note that the logic in this file should be kept in sync with the Java
-# MarkNewlinesVisitor, since that visitor is responsible for marking the
-# newlines for JRuby/TruffleRuby.
-#
-# This file is autoloaded only when `mark_newlines!` is called, so the
-# re-opening of the various nodes in this file will only be performed in
-# that case. We do that to avoid storing the extra `@newline` instance
-# variable on every node if we don't need it.
-#
-# source://prism//lib/prism/parse_result/newlines.rb#25
-class Prism::ParseResult::Newlines < ::Prism::Visitor
- # Create a new Newlines visitor with the given newline offsets.
- #
- # @return [Newlines] a new instance of Newlines
- #
- # source://prism//lib/prism/parse_result/newlines.rb#27
- def initialize(lines); end
-
- # Permit block/lambda nodes to mark newlines within themselves.
- #
- # source://prism//lib/prism/parse_result/newlines.rb#33
- def visit_block_node(node); end
-
- # Mark if/unless nodes as newlines.
- #
- # source://prism//lib/prism/parse_result/newlines.rb#47
- def visit_if_node(node); end
-
- # Permit block/lambda nodes to mark newlines within themselves.
- #
- # source://prism//lib/prism/parse_result/newlines.rb#33
- def visit_lambda_node(node); end
-
- # Permit statements lists to mark newlines within themselves.
- #
- # source://prism//lib/prism/parse_result/newlines.rb#55
- def visit_statements_node(node); end
-
- # Mark if/unless nodes as newlines.
- #
- # source://prism//lib/prism/parse_result/newlines.rb#47
- def visit_unless_node(node); end
-end
-
-# This represents a warning that was encountered during parsing.
-#
-# source://prism//lib/prism/parse_result.rb#494
-class Prism::ParseWarning
- # Create a new warning object with the given message and location.
- #
- # @return [ParseWarning] a new instance of ParseWarning
- #
- # source://prism//lib/prism/parse_result.rb#509
- sig { params(type: Symbol, message: String, location: Prism::Location, level: Symbol).void }
- def initialize(type, message, location, level); end
-
- # Implement the hash pattern matching interface for ParseWarning.
- #
- # source://prism//lib/prism/parse_result.rb#517
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- # Returns a string representation of this warning.
- #
- # source://prism//lib/prism/parse_result.rb#522
- sig { returns(String) }
- def inspect; end
-
- # The level of this warning.
- #
- # source://prism//lib/prism/parse_result.rb#506
- sig { returns(Symbol) }
- def level; end
-
- # A Location object representing the location of this warning in the source.
- #
- # source://prism//lib/prism/parse_result.rb#503
- sig { returns(Prism::Location) }
- def location; end
-
- # The message associated with this warning.
- #
- # source://prism//lib/prism/parse_result.rb#500
- sig { returns(String) }
- def message; end
-
- # The type of warning. This is an _internal_ symbol that is used for
- # communicating with translation layers. It is not meant to be public API.
- #
- # source://prism//lib/prism/parse_result.rb#497
- sig { returns(Symbol) }
- def type; end
-end
-
-# A pattern is an object that wraps a Ruby pattern matching expression. The
-# expression would normally be passed to an `in` clause within a `case`
-# expression or a rightward assignment expression. For example, in the
-# following snippet:
-#
-# case node
-# in ConstantPathNode[ConstantReadNode[name: :Prism], ConstantReadNode[name: :Pattern]]
-# end
-#
-# the pattern is the <tt>ConstantPathNode[...]</tt> expression.
-#
-# The pattern gets compiled into an object that responds to #call by running
-# the #compile method. This method itself will run back through Prism to
-# parse the expression into a tree, then walk the tree to generate the
-# necessary callable objects. For example, if you wanted to compile the
-# expression above into a callable, you would:
-#
-# callable = Prism::Pattern.new("ConstantPathNode[ConstantReadNode[name: :Prism], ConstantReadNode[name: :Pattern]]").compile
-# callable.call(node)
-#
-# The callable object returned by #compile is guaranteed to respond to #call
-# with a single argument, which is the node to match against. It also is
-# guaranteed to respond to #===, which means it itself can be used in a `case`
-# expression, as in:
-#
-# case node
-# when callable
-# end
-#
-# If the query given to the initializer cannot be compiled into a valid
-# matcher (either because of a syntax error or because it is using syntax we
-# do not yet support) then a Prism::Pattern::CompilationError will be
-# raised.
-#
-# source://prism//lib/prism/pattern.rb#37
-class Prism::Pattern
- # Create a new pattern with the given query. The query should be a string
- # containing a Ruby pattern matching expression.
- #
- # @return [Pattern] a new instance of Pattern
- #
- # source://prism//lib/prism/pattern.rb#63
- def initialize(query); end
-
- # Compile the query into a callable object that can be used to match against
- # nodes.
- #
- # @raise [CompilationError]
- #
- # source://prism//lib/prism/pattern.rb#70
- def compile; end
-
- # The query that this pattern was initialized with.
- #
- # source://prism//lib/prism/pattern.rb#59
- def query; end
-
- # Scan the given node and all of its children for nodes that match the
- # pattern. If a block is given, it will be called with each node that
- # matches the pattern. If no block is given, an enumerator will be returned
- # that will yield each node that matches the pattern.
- #
- # source://prism//lib/prism/pattern.rb#86
- def scan(root); end
-
- private
-
- # Shortcut for combining two procs into one that returns true if both return
- # true.
- #
- # source://prism//lib/prism/pattern.rb#102
- def combine_and(left, right); end
-
- # Shortcut for combining two procs into one that returns true if either
- # returns true.
- #
- # source://prism//lib/prism/pattern.rb#108
- def combine_or(left, right); end
-
- # in foo | bar
- #
- # source://prism//lib/prism/pattern.rb#143
- def compile_alternation_pattern_node(node); end
-
- # in [foo, bar, baz]
- #
- # source://prism//lib/prism/pattern.rb#118
- def compile_array_pattern_node(node); end
-
- # Compile a name associated with a constant.
- #
- # source://prism//lib/prism/pattern.rb#168
- def compile_constant_name(node, name); end
-
- # in Prism::ConstantReadNode
- #
- # source://prism//lib/prism/pattern.rb#148
- def compile_constant_path_node(node); end
-
- # in ConstantReadNode
- # in String
- #
- # source://prism//lib/prism/pattern.rb#163
- def compile_constant_read_node(node); end
-
- # Raise an error because the given node is not supported.
- #
- # @raise [CompilationError]
- #
- # source://prism//lib/prism/pattern.rb#113
- def compile_error(node); end
-
- # in InstanceVariableReadNode[name: Symbol]
- # in { name: Symbol }
- #
- # source://prism//lib/prism/pattern.rb#184
- def compile_hash_pattern_node(node); end
-
- # in nil
- #
- # source://prism//lib/prism/pattern.rb#214
- def compile_nil_node(node); end
-
- # Compile any kind of node. Dispatch out to the individual compilation
- # methods based on the type of node.
- #
- # source://prism//lib/prism/pattern.rb#243
- def compile_node(node); end
-
- # in /foo/
- #
- # source://prism//lib/prism/pattern.rb#219
- def compile_regular_expression_node(node); end
-
- # in ""
- # in "foo"
- #
- # source://prism//lib/prism/pattern.rb#227
- def compile_string_node(node); end
-
- # in :+
- # in :foo
- #
- # source://prism//lib/prism/pattern.rb#235
- def compile_symbol_node(node); end
-end
-
-# Raised when the query given to a pattern is either invalid Ruby syntax or
-# is using syntax that we don't yet support.
-#
-# source://prism//lib/prism/pattern.rb#40
-class Prism::Pattern::CompilationError < ::StandardError
- # Create a new CompilationError with the given representation of the node
- # that caused the error.
- #
- # @return [CompilationError] a new instance of CompilationError
- #
- # source://prism//lib/prism/pattern.rb#43
- def initialize(repr); end
-end
-
-# Represents the use of the `^` operator for pinning an expression in a pattern matching expression.
-#
-# foo in ^(bar)
-# ^^^^^^
-#
-# source://prism//lib/prism/node.rb#12949
-class Prism::PinnedExpressionNode < ::Prism::Node
- # Initialize a new PinnedExpressionNode node.
- #
- # @return [PinnedExpressionNode] a new instance of PinnedExpressionNode
- #
- # source://prism//lib/prism/node.rb#12951
- def initialize(source, node_id, location, flags, expression, operator_loc, lparen_loc, rparen_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#13051
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#12963
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#12968
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#12978
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#12973
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?expression: Prism::node, ?operator_loc: Location, ?lparen_loc: Location, ?rparen_loc: Location) -> PinnedExpressionNode
- #
- # source://prism//lib/prism/node.rb#12983
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), expression: T.unsafe(nil), operator_loc: T.unsafe(nil), lparen_loc: T.unsafe(nil), rparen_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#12968
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, expression: Prism::node, operator_loc: Location, lparen_loc: Location, rparen_loc: Location }
- #
- # source://prism//lib/prism/node.rb#12991
- def deconstruct_keys(keys); end
-
- # attr_reader expression: Prism::node
- #
- # source://prism//lib/prism/node.rb#12996
- def expression; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#13035
- sig { override.returns(String) }
- def inspect; end
-
- # def lparen: () -> String
- #
- # source://prism//lib/prism/node.rb#13025
- def lparen; end
-
- # attr_reader lparen_loc: Location
- #
- # source://prism//lib/prism/node.rb#13006
- def lparen_loc; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#13020
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#12999
- def operator_loc; end
-
- # def rparen: () -> String
- #
- # source://prism//lib/prism/node.rb#13030
- def rparen; end
-
- # attr_reader rparen_loc: Location
- #
- # source://prism//lib/prism/node.rb#13013
- def rparen_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#13040
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#13045
- def type; end
- end
-end
-
-# Represents the use of the `^` operator for pinning a variable in a pattern matching expression.
-#
-# foo in ^bar
-# ^^^^
-#
-# source://prism//lib/prism/node.rb#13064
-class Prism::PinnedVariableNode < ::Prism::Node
- # Initialize a new PinnedVariableNode node.
- #
- # @return [PinnedVariableNode] a new instance of PinnedVariableNode
- #
- # source://prism//lib/prism/node.rb#13066
- def initialize(source, node_id, location, flags, variable, operator_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#13140
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#13076
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#13081
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#13091
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#13086
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?variable: Prism::node, ?operator_loc: Location) -> PinnedVariableNode
- #
- # source://prism//lib/prism/node.rb#13096
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), variable: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#13081
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, variable: Prism::node, operator_loc: Location }
- #
- # source://prism//lib/prism/node.rb#13104
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#13124
- sig { override.returns(String) }
- def inspect; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#13119
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#13112
- def operator_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#13129
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader variable: Prism::node
- #
- # source://prism//lib/prism/node.rb#13109
- def variable; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#13134
- def type; end
- end
-end
-
-# Represents the use of the `END` keyword.
-#
-# END { foo }
-# ^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#13151
-class Prism::PostExecutionNode < ::Prism::Node
- # Initialize a new PostExecutionNode node.
- #
- # @return [PostExecutionNode] a new instance of PostExecutionNode
- #
- # source://prism//lib/prism/node.rb#13153
- def initialize(source, node_id, location, flags, statements, keyword_loc, opening_loc, closing_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#13255
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#13165
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#13170
- def child_nodes; end
-
- # def closing: () -> String
- #
- # source://prism//lib/prism/node.rb#13234
- def closing; end
-
- # attr_reader closing_loc: Location
- #
- # source://prism//lib/prism/node.rb#13217
- def closing_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#13182
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#13175
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?statements: StatementsNode?, ?keyword_loc: Location, ?opening_loc: Location, ?closing_loc: Location) -> PostExecutionNode
- #
- # source://prism//lib/prism/node.rb#13187
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), statements: T.unsafe(nil), keyword_loc: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#13170
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, statements: StatementsNode?, keyword_loc: Location, opening_loc: Location, closing_loc: Location }
- #
- # source://prism//lib/prism/node.rb#13195
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#13239
- sig { override.returns(String) }
- def inspect; end
-
- # def keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#13224
- def keyword; end
-
- # attr_reader keyword_loc: Location
- #
- # source://prism//lib/prism/node.rb#13203
- def keyword_loc; end
-
- # def opening: () -> String
- #
- # source://prism//lib/prism/node.rb#13229
- def opening; end
-
- # attr_reader opening_loc: Location
- #
- # source://prism//lib/prism/node.rb#13210
- def opening_loc; end
-
- # attr_reader statements: StatementsNode?
- #
- # source://prism//lib/prism/node.rb#13200
- def statements; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#13244
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#13249
- def type; end
- end
-end
-
-# Represents the use of the `BEGIN` keyword.
-#
-# BEGIN { foo }
-# ^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#13268
-class Prism::PreExecutionNode < ::Prism::Node
- # Initialize a new PreExecutionNode node.
- #
- # @return [PreExecutionNode] a new instance of PreExecutionNode
- #
- # source://prism//lib/prism/node.rb#13270
- def initialize(source, node_id, location, flags, statements, keyword_loc, opening_loc, closing_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#13372
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#13282
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#13287
- def child_nodes; end
-
- # def closing: () -> String
- #
- # source://prism//lib/prism/node.rb#13351
- def closing; end
-
- # attr_reader closing_loc: Location
- #
- # source://prism//lib/prism/node.rb#13334
- def closing_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#13299
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#13292
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?statements: StatementsNode?, ?keyword_loc: Location, ?opening_loc: Location, ?closing_loc: Location) -> PreExecutionNode
- #
- # source://prism//lib/prism/node.rb#13304
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), statements: T.unsafe(nil), keyword_loc: T.unsafe(nil), opening_loc: T.unsafe(nil), closing_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#13287
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, statements: StatementsNode?, keyword_loc: Location, opening_loc: Location, closing_loc: Location }
- #
- # source://prism//lib/prism/node.rb#13312
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#13356
- sig { override.returns(String) }
- def inspect; end
-
- # def keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#13341
- def keyword; end
-
- # attr_reader keyword_loc: Location
- #
- # source://prism//lib/prism/node.rb#13320
- def keyword_loc; end
-
- # def opening: () -> String
- #
- # source://prism//lib/prism/node.rb#13346
- def opening; end
-
- # attr_reader opening_loc: Location
- #
- # source://prism//lib/prism/node.rb#13327
- def opening_loc; end
-
- # attr_reader statements: StatementsNode?
- #
- # source://prism//lib/prism/node.rb#13317
- def statements; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#13361
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#13366
- def type; end
- end
-end
-
-# The top level node of any parse tree.
-#
-# source://prism//lib/prism/node.rb#13382
-class Prism::ProgramNode < ::Prism::Node
- # Initialize a new ProgramNode node.
- #
- # @return [ProgramNode] a new instance of ProgramNode
- #
- # source://prism//lib/prism/node.rb#13384
- def initialize(source, node_id, location, flags, locals, statements); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#13449
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#13394
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#13399
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#13409
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#13404
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?locals: Array[Symbol], ?statements: StatementsNode) -> ProgramNode
- #
- # source://prism//lib/prism/node.rb#13414
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), locals: T.unsafe(nil), statements: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#13399
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, locals: Array[Symbol], statements: StatementsNode }
- #
- # source://prism//lib/prism/node.rb#13422
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#13433
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader locals: Array[Symbol]
- #
- # source://prism//lib/prism/node.rb#13427
- def locals; end
-
- # attr_reader statements: StatementsNode
- #
- # source://prism//lib/prism/node.rb#13430
- def statements; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#13438
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#13443
- def type; end
- end
-end
-
-# Flags for range and flip-flop nodes.
-#
-# source://prism//lib/prism/node.rb#16731
-module Prism::RangeFlags; end
-
-# ... operator
-#
-# source://prism//lib/prism/node.rb#16733
-Prism::RangeFlags::EXCLUDE_END = T.let(T.unsafe(nil), Integer)
-
-# Represents the use of the `..` or `...` operators.
-#
-# 1..2
-# ^^^^
-#
-# c if a =~ /left/ ... b =~ /right/
-# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#13464
-class Prism::RangeNode < ::Prism::Node
- # Initialize a new RangeNode node.
- #
- # @return [RangeNode] a new instance of RangeNode
- #
- # source://prism//lib/prism/node.rb#13466
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- left: T.nilable(Prism::Node),
- right: T.nilable(Prism::Node),
- operator_loc: Prism::Location
- ).void
- end
- def initialize(source, node_id, location, flags, left, right, operator_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#13565
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#13477
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#13482
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#13495
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#13487
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?left: Prism::node?, ?right: Prism::node?, ?operator_loc: Location) -> RangeNode
- #
- # source://prism//lib/prism/node.rb#13500
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- left: T.nilable(Prism::Node),
- right: T.nilable(Prism::Node),
- operator_loc: Prism::Location
- ).returns(Prism::RangeNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), left: T.unsafe(nil), right: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#13482
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, left: Prism::node?, right: Prism::node?, operator_loc: Location }
- #
- # source://prism//lib/prism/node.rb#13508
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- # def exclude_end?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#13513
- sig { returns(T::Boolean) }
- def exclude_end?; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#13549
- sig { override.returns(String) }
- def inspect; end
-
- # The left-hand side of the range, if present. It can be either `nil` or any [non-void expression](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#non-void-expression).
- #
- # 1...
- # ^
- #
- # hello...goodbye
- # ^^^^^
- #
- # source://prism//lib/prism/node.rb#13524
- sig { returns(T.nilable(Prism::Node)) }
- def left; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#13544
- sig { returns(String) }
- def operator; end
-
- # The location of the `..` or `...` operator.
- #
- # source://prism//lib/prism/node.rb#13537
- sig { returns(Prism::Location) }
- def operator_loc; end
-
- # The right-hand side of the range, if present. It can be either `nil` or any [non-void expression](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#non-void-expression).
- #
- # ..5
- # ^
- #
- # 1...foo
- # ^^^
- # If neither right-hand or left-hand side was included, this will be a MissingNode.
- #
- # source://prism//lib/prism/node.rb#13534
- sig { returns(T.nilable(Prism::Node)) }
- def right; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#13554
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#13559
- def type; end
- end
-end
-
-# Represents a rational number literal.
-#
-# 1.0r
-# ^^^^
-#
-# source://prism//lib/prism/node.rb#13578
-class Prism::RationalNode < ::Prism::Node
- # Initialize a new RationalNode node.
- #
- # @return [RationalNode] a new instance of RationalNode
- #
- # source://prism//lib/prism/node.rb#13580
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- numerator: Integer,
- denominator: Integer
- ).void
- end
- def initialize(source, node_id, location, flags, numerator, denominator); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#13669
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#13590
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def binary?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#13623
- sig { returns(T::Boolean) }
- def binary?; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#13595
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#13605
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#13600
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?numerator: Integer, ?denominator: Integer) -> RationalNode
- #
- # source://prism//lib/prism/node.rb#13610
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- numerator: Integer,
- denominator: Integer
- ).returns(Prism::RationalNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), numerator: T.unsafe(nil), denominator: T.unsafe(nil)); end
-
- # def decimal?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#13628
- sig { returns(T::Boolean) }
- def decimal?; end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#13595
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, numerator: Integer, denominator: Integer }
- #
- # source://prism//lib/prism/node.rb#13618
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- # The denominator of the rational number.
- #
- # 1.5r # denominator 2
- #
- # source://prism//lib/prism/node.rb#13650
- sig { returns(Integer) }
- def denominator; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def hexadecimal?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#13638
- sig { returns(T::Boolean) }
- def hexadecimal?; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#13653
- sig { override.returns(String) }
- def inspect; end
-
- # The numerator of the rational number.
- #
- # 1.5r # numerator 3
- #
- # source://prism//lib/prism/node.rb#13645
- sig { returns(Integer) }
- def numerator; end
-
- # Returns the value of the node as an IntegerNode or a FloatNode. This
- # method is deprecated in favor of #value or #numerator/#denominator.
- #
- # source://prism//lib/prism/node_ext.rb#120
- def numeric; end
-
- # def octal?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#13633
- sig { returns(T::Boolean) }
- def octal?; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#13658
- sig { override.returns(Symbol) }
- def type; end
-
- # Returns the value of the node as a Ruby Rational.
- #
- # source://prism//lib/prism/node_ext.rb#114
- sig { returns(Rational) }
- def value; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#13663
- def type; end
- end
-end
-
-# Represents the use of the `redo` keyword.
-#
-# redo
-# ^^^^
-#
-# source://prism//lib/prism/node.rb#13681
-class Prism::RedoNode < ::Prism::Node
- # Initialize a new RedoNode node.
- #
- # @return [RedoNode] a new instance of RedoNode
- #
- # source://prism//lib/prism/node.rb#13683
- def initialize(source, node_id, location, flags); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#13740
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#13691
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#13696
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#13706
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#13701
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer) -> RedoNode
- #
- # source://prism//lib/prism/node.rb#13711
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#13696
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location }
- #
- # source://prism//lib/prism/node.rb#13719
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#13724
- sig { override.returns(String) }
- def inspect; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#13729
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#13734
- def type; end
- end
-end
-
-# The Reflection module provides the ability to reflect on the structure of
-# the syntax tree itself, as opposed to looking at a single syntax tree. This
-# is useful in metaprogramming contexts.
-#
-# source://prism//lib/prism/reflection.rb#13
-module Prism::Reflection
- class << self
- # Returns the fields for the given node.
- #
- # source://prism//lib/prism/reflection.rb#104
- sig { params(node: T.class_of(Prism::Node)).returns(T::Array[Prism::Reflection::Field]) }
- def fields_for(node); end
- end
-end
-
-# A constant field represents a constant value on a node. Effectively, it
-# represents an identifier found within the source. It resolves to a symbol
-# in Ruby.
-#
-# source://prism//lib/prism/reflection.rb#45
-class Prism::Reflection::ConstantField < ::Prism::Reflection::Field; end
-
-# A constant list field represents a list of constant values on a node. It
-# resolves to an array of symbols in Ruby.
-#
-# source://prism//lib/prism/reflection.rb#55
-class Prism::Reflection::ConstantListField < ::Prism::Reflection::Field; end
-
-# A field represents a single piece of data on a node. It is the base class
-# for all other field types.
-#
-# source://prism//lib/prism/reflection.rb#16
-class Prism::Reflection::Field
- # Initializes the field with the given name.
- #
- # @return [Field] a new instance of Field
- #
- # source://prism//lib/prism/reflection.rb#21
- sig { params(name: Symbol).void }
- def initialize(name); end
-
- # The name of the field.
- #
- # source://prism//lib/prism/reflection.rb#18
- sig { returns(Symbol) }
- def name; end
-end
-
-# A flags field represents a bitset of flags on a node. It resolves to an
-# integer in Ruby. Note that the flags cannot be accessed directly on the
-# node because the integer is kept private. Instead, the various flags in
-# the bitset should be accessed through their query methods.
-#
-# source://prism//lib/prism/reflection.rb#92
-class Prism::Reflection::FlagsField < ::Prism::Reflection::Field
- # Initializes the flags field with the given name and flags.
- #
- # @return [FlagsField] a new instance of FlagsField
- #
- # source://prism//lib/prism/reflection.rb#97
- sig { params(name: Symbol, flags: T::Array[Symbol]).void }
- def initialize(name, flags); end
-
- # The names of the flags in the bitset.
- #
- # source://prism//lib/prism/reflection.rb#94
- sig { returns(T::Array[Symbol]) }
- def flags; end
-end
-
-# A float field represents a double-precision floating point value. It is
-# used exclusively to represent the value of a floating point literal. It
-# resolves to a Float in Ruby.
-#
-# source://prism//lib/prism/reflection.rb#85
-class Prism::Reflection::FloatField < ::Prism::Reflection::Field; end
-
-# An integer field represents an integer value. It is used to represent the
-# value of an integer literal, the depth of local variables, and the number
-# of a numbered reference. It resolves to an Integer in Ruby.
-#
-# source://prism//lib/prism/reflection.rb#79
-class Prism::Reflection::IntegerField < ::Prism::Reflection::Field; end
-
-# A location field represents the location of some part of the node in the
-# source code. For example, the location of a keyword or an operator. It
-# resolves to a Prism::Location in Ruby.
-#
-# source://prism//lib/prism/reflection.rb#67
-class Prism::Reflection::LocationField < ::Prism::Reflection::Field; end
-
-# A node field represents a single child node in the syntax tree. It
-# resolves to a Prism::Node in Ruby.
-#
-# source://prism//lib/prism/reflection.rb#28
-class Prism::Reflection::NodeField < ::Prism::Reflection::Field; end
-
-# A node list field represents a list of child nodes in the syntax tree. It
-# resolves to an array of Prism::Node instances in Ruby.
-#
-# source://prism//lib/prism/reflection.rb#39
-class Prism::Reflection::NodeListField < ::Prism::Reflection::Field; end
-
-# An optional constant field represents a constant value on a node that may
-# or may not be present. It resolves to either a symbol or nil in Ruby.
-#
-# source://prism//lib/prism/reflection.rb#50
-class Prism::Reflection::OptionalConstantField < ::Prism::Reflection::Field; end
-
-# An optional location field represents the location of some part of the
-# node in the source code that may or may not be present. It resolves to
-# either a Prism::Location or nil in Ruby.
-#
-# source://prism//lib/prism/reflection.rb#73
-class Prism::Reflection::OptionalLocationField < ::Prism::Reflection::Field; end
-
-# An optional node field represents a single child node in the syntax tree
-# that may or may not be present. It resolves to either a Prism::Node or nil
-# in Ruby.
-#
-# source://prism//lib/prism/reflection.rb#34
-class Prism::Reflection::OptionalNodeField < ::Prism::Reflection::Field; end
-
-# A string field represents a string value on a node. It almost always
-# represents the unescaped value of a string-like literal. It resolves to a
-# string in Ruby.
-#
-# source://prism//lib/prism/reflection.rb#61
-class Prism::Reflection::StringField < ::Prism::Reflection::Field; end
-
-# Flags for regular expression and match last line nodes.
-#
-# source://prism//lib/prism/node.rb#16737
-module Prism::RegularExpressionFlags; end
-
-# n - forces the ASCII-8BIT encoding
-#
-# source://prism//lib/prism/node.rb#16754
-Prism::RegularExpressionFlags::ASCII_8BIT = T.let(T.unsafe(nil), Integer)
-
-# e - forces the EUC-JP encoding
-#
-# source://prism//lib/prism/node.rb#16751
-Prism::RegularExpressionFlags::EUC_JP = T.let(T.unsafe(nil), Integer)
-
-# x - ignores whitespace and allows comments in regular expressions
-#
-# source://prism//lib/prism/node.rb#16742
-Prism::RegularExpressionFlags::EXTENDED = T.let(T.unsafe(nil), Integer)
-
-# internal bytes forced the encoding to binary
-#
-# source://prism//lib/prism/node.rb#16766
-Prism::RegularExpressionFlags::FORCED_BINARY_ENCODING = T.let(T.unsafe(nil), Integer)
-
-# internal bytes forced the encoding to US-ASCII
-#
-# source://prism//lib/prism/node.rb#16769
-Prism::RegularExpressionFlags::FORCED_US_ASCII_ENCODING = T.let(T.unsafe(nil), Integer)
-
-# internal bytes forced the encoding to UTF-8
-#
-# source://prism//lib/prism/node.rb#16763
-Prism::RegularExpressionFlags::FORCED_UTF8_ENCODING = T.let(T.unsafe(nil), Integer)
-
-# i - ignores the case of characters when matching
-#
-# source://prism//lib/prism/node.rb#16739
-Prism::RegularExpressionFlags::IGNORE_CASE = T.let(T.unsafe(nil), Integer)
-
-# m - allows $ to match the end of lines within strings
-#
-# source://prism//lib/prism/node.rb#16745
-Prism::RegularExpressionFlags::MULTI_LINE = T.let(T.unsafe(nil), Integer)
-
-# o - only interpolates values into the regular expression once
-#
-# source://prism//lib/prism/node.rb#16748
-Prism::RegularExpressionFlags::ONCE = T.let(T.unsafe(nil), Integer)
-
-# u - forces the UTF-8 encoding
-#
-# source://prism//lib/prism/node.rb#16760
-Prism::RegularExpressionFlags::UTF_8 = T.let(T.unsafe(nil), Integer)
-
-# s - forces the Windows-31J encoding
-#
-# source://prism//lib/prism/node.rb#16757
-Prism::RegularExpressionFlags::WINDOWS_31J = T.let(T.unsafe(nil), Integer)
-
-# Represents a regular expression literal with no interpolation.
-#
-# /foo/i
-# ^^^^^^
-#
-# source://prism//lib/prism/node.rb#13749
-class Prism::RegularExpressionNode < ::Prism::Node
- include ::Prism::RegularExpressionOptions
-
- # Initialize a new RegularExpressionNode node.
- #
- # @return [RegularExpressionNode] a new instance of RegularExpressionNode
- #
- # source://prism//lib/prism/node.rb#13751
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- opening_loc: Prism::Location,
- content_loc: Prism::Location,
- closing_loc: Prism::Location,
- unescaped: String
- ).void
- end
- def initialize(source, node_id, location, flags, opening_loc, content_loc, closing_loc, unescaped); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#13906
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#13763
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def ascii_8bit?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#13821
- sig { returns(T::Boolean) }
- def ascii_8bit?; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#13768
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def closing: () -> String
- #
- # source://prism//lib/prism/node.rb#13885
- sig { returns(String) }
- def closing; end
-
- # attr_reader closing_loc: Location
- #
- # source://prism//lib/prism/node.rb#13865
- sig { returns(Prism::Location) }
- def closing_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#13778
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#13773
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def content: () -> String
- #
- # source://prism//lib/prism/node.rb#13880
- sig { returns(String) }
- def content; end
-
- # attr_reader content_loc: Location
- #
- # source://prism//lib/prism/node.rb#13858
- sig { returns(Prism::Location) }
- def content_loc; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?opening_loc: Location, ?content_loc: Location, ?closing_loc: Location, ?unescaped: String) -> RegularExpressionNode
- #
- # source://prism//lib/prism/node.rb#13783
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- opening_loc: Prism::Location,
- content_loc: Prism::Location,
- closing_loc: Prism::Location,
- unescaped: String
- ).returns(Prism::RegularExpressionNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), opening_loc: T.unsafe(nil), content_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), unescaped: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#13768
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, opening_loc: Location, content_loc: Location, closing_loc: Location, unescaped: String }
- #
- # source://prism//lib/prism/node.rb#13791
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- # def euc_jp?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#13816
- sig { returns(T::Boolean) }
- def euc_jp?; end
-
- # def extended?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#13801
- sig { returns(T::Boolean) }
- def extended?; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def forced_binary_encoding?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#13841
- sig { returns(T::Boolean) }
- def forced_binary_encoding?; end
-
- # def forced_us_ascii_encoding?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#13846
- sig { returns(T::Boolean) }
- def forced_us_ascii_encoding?; end
-
- # def forced_utf8_encoding?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#13836
- sig { returns(T::Boolean) }
- def forced_utf8_encoding?; end
-
- # def ignore_case?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#13796
- sig { returns(T::Boolean) }
- def ignore_case?; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#13890
- sig { override.returns(String) }
- def inspect; end
-
- # def multi_line?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#13806
- sig { returns(T::Boolean) }
- def multi_line?; end
-
- # def once?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#13811
- sig { returns(T::Boolean) }
- def once?; end
-
- # def opening: () -> String
- #
- # source://prism//lib/prism/node.rb#13875
- sig { returns(String) }
- def opening; end
-
- # attr_reader opening_loc: Location
- #
- # source://prism//lib/prism/node.rb#13851
- sig { returns(Prism::Location) }
- def opening_loc; end
-
- sig { returns(Integer) }
- def options; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#13895
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader unescaped: String
- #
- # source://prism//lib/prism/node.rb#13872
- sig { returns(String) }
- def unescaped; end
-
- # def utf_8?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#13831
- sig { returns(T::Boolean) }
- def utf_8?; end
-
- # def windows_31j?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#13826
- sig { returns(T::Boolean) }
- def windows_31j?; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#13900
- def type; end
- end
-end
-
-# source://prism//lib/prism/node_ext.rb#20
-module Prism::RegularExpressionOptions
- # Returns a numeric value that represents the flags that were used to create
- # the regular expression.
- #
- # source://prism//lib/prism/node_ext.rb#23
- def options; end
-end
-
-# Represents a required keyword parameter to a method, block, or lambda definition.
-#
-# def a(b: )
-# ^^
-# end
-#
-# source://prism//lib/prism/node.rb#13921
-class Prism::RequiredKeywordParameterNode < ::Prism::Node
- # Initialize a new RequiredKeywordParameterNode node.
- #
- # @return [RequiredKeywordParameterNode] a new instance of RequiredKeywordParameterNode
- #
- # source://prism//lib/prism/node.rb#13923
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol,
- name_loc: Prism::Location
- ).void
- end
- def initialize(source, node_id, location, flags, name, name_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#13997
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#13933
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#13938
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#13948
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#13943
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol, ?name_loc: Location) -> RequiredKeywordParameterNode
- #
- # source://prism//lib/prism/node.rb#13953
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol,
- name_loc: Prism::Location
- ).returns(Prism::RequiredKeywordParameterNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#13938
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol, name_loc: Location }
- #
- # source://prism//lib/prism/node.rb#13961
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#13981
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#13971
- sig { returns(Symbol) }
- def name; end
-
- # attr_reader name_loc: Location
- #
- # source://prism//lib/prism/node.rb#13974
- sig { returns(Prism::Location) }
- def name_loc; end
-
- # def repeated_parameter?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#13966
- sig { returns(T::Boolean) }
- def repeated_parameter?; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#13986
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#13991
- def type; end
- end
-end
-
-# Represents a required parameter to a method, block, or lambda definition.
-#
-# def a(b)
-# ^
-# end
-#
-# source://prism//lib/prism/node.rb#14010
-class Prism::RequiredParameterNode < ::Prism::Node
- # Initialize a new RequiredParameterNode node.
- #
- # @return [RequiredParameterNode] a new instance of RequiredParameterNode
- #
- # source://prism//lib/prism/node.rb#14012
- sig { params(source: Prism::Source, node_id: Integer, location: Prism::Location, flags: Integer, name: Symbol).void }
- def initialize(source, node_id, location, flags, name); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#14078
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#14021
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#14026
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#14036
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#14031
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol) -> RequiredParameterNode
- #
- # source://prism//lib/prism/node.rb#14041
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: Symbol
- ).returns(Prism::RequiredParameterNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#14026
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol }
- #
- # source://prism//lib/prism/node.rb#14049
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#14062
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader name: Symbol
- #
- # source://prism//lib/prism/node.rb#14059
- sig { returns(Symbol) }
- def name; end
-
- # def repeated_parameter?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#14054
- sig { returns(T::Boolean) }
- def repeated_parameter?; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#14067
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#14072
- def type; end
- end
-end
-
-# Represents an expression modified with a rescue.
-#
-# foo rescue nil
-# ^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#14089
-class Prism::RescueModifierNode < ::Prism::Node
- # Initialize a new RescueModifierNode node.
- #
- # @return [RescueModifierNode] a new instance of RescueModifierNode
- #
- # source://prism//lib/prism/node.rb#14091
- def initialize(source, node_id, location, flags, expression, keyword_loc, rescue_expression); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#14169
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#14102
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#14107
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#14117
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#14112
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?expression: Prism::node, ?keyword_loc: Location, ?rescue_expression: Prism::node) -> RescueModifierNode
- #
- # source://prism//lib/prism/node.rb#14122
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), expression: T.unsafe(nil), keyword_loc: T.unsafe(nil), rescue_expression: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#14107
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, expression: Prism::node, keyword_loc: Location, rescue_expression: Prism::node }
- #
- # source://prism//lib/prism/node.rb#14130
- def deconstruct_keys(keys); end
-
- # attr_reader expression: Prism::node
- #
- # source://prism//lib/prism/node.rb#14135
- def expression; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#14153
- sig { override.returns(String) }
- def inspect; end
-
- # def keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#14148
- def keyword; end
-
- # attr_reader keyword_loc: Location
- #
- # source://prism//lib/prism/node.rb#14138
- def keyword_loc; end
-
- # source://prism//lib/prism/parse_result/newlines.rb#115
- def newline_flag!(lines); end
-
- # attr_reader rescue_expression: Prism::node
- #
- # source://prism//lib/prism/node.rb#14145
- def rescue_expression; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#14158
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#14163
- def type; end
- end
-end
-
-# Represents a rescue statement.
-#
-# begin
-# rescue Foo, *splat, Bar => ex
-# foo
-# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-# end
-#
-# `Foo, *splat, Bar` are in the `exceptions` field. `ex` is in the `exception` field.
-#
-# source://prism//lib/prism/node.rb#14186
-class Prism::RescueNode < ::Prism::Node
- # Initialize a new RescueNode node.
- #
- # @return [RescueNode] a new instance of RescueNode
- #
- # source://prism//lib/prism/node.rb#14188
- def initialize(source, node_id, location, flags, keyword_loc, exceptions, operator_loc, reference, statements, subsequent); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#14298
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#14202
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#14207
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#14222
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#14212
- def compact_child_nodes; end
-
- # Returns the subsequent rescue clause of the rescue node. This method is
- # deprecated in favor of #subsequent.
- #
- # source://prism//lib/prism/node_ext.rb#494
- def consequent; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?keyword_loc: Location, ?exceptions: Array[Prism::node], ?operator_loc: Location?, ?reference: Prism::node?, ?statements: StatementsNode?, ?subsequent: RescueNode?) -> RescueNode
- #
- # source://prism//lib/prism/node.rb#14227
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), keyword_loc: T.unsafe(nil), exceptions: T.unsafe(nil), operator_loc: T.unsafe(nil), reference: T.unsafe(nil), statements: T.unsafe(nil), subsequent: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#14207
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, keyword_loc: Location, exceptions: Array[Prism::node], operator_loc: Location?, reference: Prism::node?, statements: StatementsNode?, subsequent: RescueNode? }
- #
- # source://prism//lib/prism/node.rb#14235
- def deconstruct_keys(keys); end
-
- # attr_reader exceptions: Array[Prism::node]
- #
- # source://prism//lib/prism/node.rb#14247
- def exceptions; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#14282
- sig { override.returns(String) }
- def inspect; end
-
- # def keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#14272
- def keyword; end
-
- # attr_reader keyword_loc: Location
- #
- # source://prism//lib/prism/node.rb#14240
- def keyword_loc; end
-
- # def operator: () -> String?
- #
- # source://prism//lib/prism/node.rb#14277
- def operator; end
-
- # attr_reader operator_loc: Location?
- #
- # source://prism//lib/prism/node.rb#14250
- def operator_loc; end
-
- # attr_reader reference: Prism::node?
- #
- # source://prism//lib/prism/node.rb#14263
- def reference; end
-
- # attr_reader statements: StatementsNode?
- #
- # source://prism//lib/prism/node.rb#14266
- def statements; end
-
- # attr_reader subsequent: RescueNode?
- #
- # source://prism//lib/prism/node.rb#14269
- def subsequent; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#14287
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#14292
- def type; end
- end
-end
-
-# Represents a rest parameter to a method, block, or lambda definition.
-#
-# def a(*b)
-# ^^
-# end
-#
-# source://prism//lib/prism/node.rb#14315
-class Prism::RestParameterNode < ::Prism::Node
- # Initialize a new RestParameterNode node.
- #
- # @return [RestParameterNode] a new instance of RestParameterNode
- #
- # source://prism//lib/prism/node.rb#14317
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: T.nilable(Symbol),
- name_loc: T.nilable(Prism::Location),
- operator_loc: Prism::Location
- ).void
- end
- def initialize(source, node_id, location, flags, name, name_loc, operator_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#14410
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#14328
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#14333
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#14343
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#14338
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol?, ?name_loc: Location?, ?operator_loc: Location) -> RestParameterNode
- #
- # source://prism//lib/prism/node.rb#14348
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- name: T.nilable(Symbol),
- name_loc: T.nilable(Prism::Location),
- operator_loc: Prism::Location
- ).returns(Prism::RestParameterNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), name: T.unsafe(nil), name_loc: T.unsafe(nil), operator_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#14333
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol?, name_loc: Location?, operator_loc: Location }
- #
- # source://prism//lib/prism/node.rb#14356
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#14394
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader name: Symbol?
- #
- # source://prism//lib/prism/node.rb#14366
- sig { returns(T.nilable(Symbol)) }
- def name; end
-
- # attr_reader name_loc: Location?
- #
- # source://prism//lib/prism/node.rb#14369
- sig { returns(T.nilable(Prism::Location)) }
- def name_loc; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#14389
- sig { returns(String) }
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#14382
- sig { returns(Prism::Location) }
- def operator_loc; end
-
- # def repeated_parameter?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#14361
- sig { returns(T::Boolean) }
- def repeated_parameter?; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#14399
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#14404
- def type; end
- end
-end
-
-# This represents the result of a call to ::parse or ::parse_file. It contains
-# the requested structure, any comments that were encounters, and any errors
-# that were encountered.
-#
-# source://prism//lib/prism/parse_result.rb#530
-class Prism::Result
- # Create a new result object with the given values.
- #
- # @return [Result] a new instance of Result
- #
- # source://prism//lib/prism/parse_result.rb#552
- sig do
- params(
- comments: T::Array[Prism::Comment],
- magic_comments: T::Array[Prism::MagicComment],
- data_loc: T.nilable(Prism::Location),
- errors: T::Array[Prism::ParseError],
- warnings: T::Array[Prism::ParseWarning],
- source: Prism::Source
- ).void
- end
- def initialize(comments, magic_comments, data_loc, errors, warnings, source); end
-
- # The list of comments that were encountered during parsing.
- #
- # source://prism//lib/prism/parse_result.rb#532
- sig { returns(T::Array[Prism::Comment]) }
- def comments; end
-
- # An optional location that represents the location of the __END__ marker
- # and the rest of the content of the file. This content is loaded into the
- # DATA constant when the file being parsed is the main file being executed.
- #
- # source://prism//lib/prism/parse_result.rb#540
- sig { returns(T.nilable(Prism::Location)) }
- def data_loc; end
-
- # Implement the hash pattern matching interface for Result.
- #
- # source://prism//lib/prism/parse_result.rb#562
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- # Returns the encoding of the source code that was parsed.
- #
- # source://prism//lib/prism/parse_result.rb#567
- sig { returns(Encoding) }
- def encoding; end
-
- # The list of errors that were generated during parsing.
- #
- # source://prism//lib/prism/parse_result.rb#543
- sig { returns(T::Array[Prism::ParseError]) }
- def errors; end
-
- # Returns true if there were errors during parsing and false if there were
- # not.
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/parse_result.rb#579
- sig { returns(T::Boolean) }
- def failure?; end
-
- # The list of magic comments that were encountered during parsing.
- #
- # source://prism//lib/prism/parse_result.rb#535
- sig { returns(T::Array[Prism::MagicComment]) }
- def magic_comments; end
-
- # A Source instance that represents the source code that was parsed.
- #
- # source://prism//lib/prism/parse_result.rb#549
- sig { returns(Prism::Source) }
- def source; end
-
- # Returns true if there were no errors during parsing and false if there
- # were.
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/parse_result.rb#573
- sig { returns(T::Boolean) }
- def success?; end
-
- # The list of warnings that were generated during parsing.
- #
- # source://prism//lib/prism/parse_result.rb#546
- sig { returns(T::Array[Prism::ParseWarning]) }
- def warnings; end
-end
-
-# Represents the use of the `retry` keyword.
-#
-# retry
-# ^^^^^
-#
-# source://prism//lib/prism/node.rb#14423
-class Prism::RetryNode < ::Prism::Node
- # Initialize a new RetryNode node.
- #
- # @return [RetryNode] a new instance of RetryNode
- #
- # source://prism//lib/prism/node.rb#14425
- def initialize(source, node_id, location, flags); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#14482
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#14433
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#14438
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#14448
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#14443
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer) -> RetryNode
- #
- # source://prism//lib/prism/node.rb#14453
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#14438
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location }
- #
- # source://prism//lib/prism/node.rb#14461
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#14466
- sig { override.returns(String) }
- def inspect; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#14471
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#14476
- def type; end
- end
-end
-
-# Represents the use of the `return` keyword.
-#
-# return 1
-# ^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#14491
-class Prism::ReturnNode < ::Prism::Node
- # Initialize a new ReturnNode node.
- #
- # @return [ReturnNode] a new instance of ReturnNode
- #
- # source://prism//lib/prism/node.rb#14493
- def initialize(source, node_id, location, flags, keyword_loc, arguments); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#14569
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#14503
- def accept(visitor); end
-
- # attr_reader arguments: ArgumentsNode?
- #
- # source://prism//lib/prism/node.rb#14545
- def arguments; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#14508
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#14520
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#14513
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?keyword_loc: Location, ?arguments: ArgumentsNode?) -> ReturnNode
- #
- # source://prism//lib/prism/node.rb#14525
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), keyword_loc: T.unsafe(nil), arguments: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#14508
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, keyword_loc: Location, arguments: ArgumentsNode? }
- #
- # source://prism//lib/prism/node.rb#14533
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#14553
- sig { override.returns(String) }
- def inspect; end
-
- # def keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#14548
- def keyword; end
-
- # attr_reader keyword_loc: Location
- #
- # source://prism//lib/prism/node.rb#14538
- def keyword_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#14558
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#14563
- def type; end
- end
-end
-
-# Represents the `self` keyword.
-#
-# self
-# ^^^^
-#
-# source://prism//lib/prism/node.rb#14580
-class Prism::SelfNode < ::Prism::Node
- # Initialize a new SelfNode node.
- #
- # @return [SelfNode] a new instance of SelfNode
- #
- # source://prism//lib/prism/node.rb#14582
- def initialize(source, node_id, location, flags); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#14639
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#14590
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#14595
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#14605
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#14600
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer) -> SelfNode
- #
- # source://prism//lib/prism/node.rb#14610
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#14595
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location }
- #
- # source://prism//lib/prism/node.rb#14618
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#14623
- sig { override.returns(String) }
- def inspect; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#14628
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#14633
- def type; end
- end
-end
-
-# A module responsible for deserializing parse results.
-#
-# source://prism//lib/prism/serialize.rb#14
-module Prism::Serialize
- class << self
- # Deserialize the AST represented by the given string into a parse result.
- #
- # source://prism//lib/prism/serialize.rb#28
- def load(input, serialized); end
-
- # Deserialize the tokens represented by the given string into a parse
- # result.
- #
- # source://prism//lib/prism/serialize.rb#40
- def load_tokens(source, serialized); end
- end
-end
-
-# source://prism//lib/prism/serialize.rb#44
-class Prism::Serialize::Loader
- # @return [Loader] a new instance of Loader
- #
- # source://prism//lib/prism/serialize.rb#80
- def initialize(source, serialized); end
-
- # Returns the value of attribute constant_pool.
- #
- # source://prism//lib/prism/serialize.rb#77
- def constant_pool; end
-
- # Returns the value of attribute constant_pool_offset.
- #
- # source://prism//lib/prism/serialize.rb#77
- def constant_pool_offset; end
-
- # Returns the value of attribute encoding.
- #
- # source://prism//lib/prism/serialize.rb#76
- def encoding; end
-
- # Returns the value of attribute input.
- #
- # source://prism//lib/prism/serialize.rb#76
- def input; end
-
- # Returns the value of attribute io.
- #
- # source://prism//lib/prism/serialize.rb#76
- def io; end
-
- # source://prism//lib/prism/serialize.rb#118
- def load_comments; end
-
- # source://prism//lib/prism/serialize.rb#104
- def load_encoding; end
-
- # source://prism//lib/prism/serialize.rb#95
- def load_header; end
-
- # source://prism//lib/prism/serialize.rb#114
- def load_line_offsets; end
-
- # source://prism//lib/prism/serialize.rb#446
- def load_metadata; end
-
- # source://prism//lib/prism/serialize.rb#480
- def load_nodes; end
-
- # source://prism//lib/prism/serialize.rb#494
- def load_result; end
-
- # source://prism//lib/prism/serialize.rb#110
- def load_start_line; end
-
- # source://prism//lib/prism/serialize.rb#455
- def load_tokens; end
-
- # source://prism//lib/prism/serialize.rb#468
- def load_tokens_result; end
-
- # Returns the value of attribute serialized.
- #
- # source://prism//lib/prism/serialize.rb#76
- def serialized; end
-
- # Returns the value of attribute source.
- #
- # source://prism//lib/prism/serialize.rb#77
- def source; end
-
- # Returns the value of attribute start_line.
- #
- # source://prism//lib/prism/serialize.rb#78
- def start_line; end
-
- private
-
- # source://prism//lib/prism/serialize.rb#580
- def load_constant(index); end
-
- # source://prism//lib/prism/serialize.rb#533
- def load_double; end
-
- # source://prism//lib/prism/serialize.rb#548
- def load_embedded_string; end
-
- # source://prism//lib/prism/serialize.rb#610
- def load_error_level; end
-
- # source://prism//lib/prism/serialize.rb#522
- def load_integer; end
-
- # source://prism//lib/prism/serialize.rb#564
- def load_location; end
-
- # source://prism//lib/prism/serialize.rb#568
- def load_location_object; end
-
- # source://prism//lib/prism/serialize.rb#639
- def load_node; end
-
- # source://prism//lib/prism/serialize.rb#605
- def load_optional_constant; end
-
- # source://prism//lib/prism/serialize.rb#572
- def load_optional_location; end
-
- # source://prism//lib/prism/serialize.rb#576
- def load_optional_location_object; end
-
- # source://prism//lib/prism/serialize.rb#541
- def load_optional_node; end
-
- # source://prism//lib/prism/serialize.rb#601
- def load_required_constant; end
-
- # source://prism//lib/prism/serialize.rb#552
- def load_string; end
-
- # source://prism//lib/prism/serialize.rb#537
- def load_uint32; end
-
- # source://prism//lib/prism/serialize.rb#517
- def load_varsint; end
-
- # variable-length integer using https://en.wikipedia.org/wiki/LEB128
- # This is also what protobuf uses: https://protobuf.dev/programming-guides/encoding/#varints
- #
- # source://prism//lib/prism/serialize.rb#503
- def load_varuint; end
-
- # source://prism//lib/prism/serialize.rb#625
- def load_warning_level; end
-end
-
-# source://prism//lib/prism/serialize.rb#127
-Prism::Serialize::Loader::DIAGNOSTIC_TYPES = T.let(T.unsafe(nil), Array)
-
-# StringIO is synchronized and that adds a high overhead on TruffleRuby.
-#
-# source://prism//lib/prism/serialize.rb#72
-Prism::Serialize::Loader::FastStringIO = StringIO
-
-# The major version of prism that we are expecting to find in the serialized
-# strings.
-#
-# source://prism//lib/prism/serialize.rb#17
-Prism::Serialize::MAJOR_VERSION = T.let(T.unsafe(nil), Integer)
-
-# The minor version of prism that we are expecting to find in the serialized
-# strings.
-#
-# source://prism//lib/prism/serialize.rb#21
-Prism::Serialize::MINOR_VERSION = T.let(T.unsafe(nil), Integer)
-
-# The patch version of prism that we are expecting to find in the serialized
-# strings.
-#
-# source://prism//lib/prism/serialize.rb#25
-Prism::Serialize::PATCH_VERSION = T.let(T.unsafe(nil), Integer)
-
-# The token types that can be indexed by their enum values.
-#
-# source://prism//lib/prism/serialize.rb#1721
-Prism::Serialize::TOKEN_TYPES = T.let(T.unsafe(nil), Array)
-
-# This node wraps a constant write to indicate that when the value is written, it should have its shareability state modified.
-#
-# C = { a: 1 }
-# ^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#14649
-class Prism::ShareableConstantNode < ::Prism::Node
- # Initialize a new ShareableConstantNode node.
- #
- # @return [ShareableConstantNode] a new instance of ShareableConstantNode
- #
- # source://prism//lib/prism/node.rb#14651
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- write: T.any(Prism::ConstantWriteNode, Prism::ConstantAndWriteNode, Prism::ConstantOrWriteNode, Prism::ConstantOperatorWriteNode, Prism::ConstantPathWriteNode, Prism::ConstantPathAndWriteNode, Prism::ConstantPathOrWriteNode, Prism::ConstantPathOperatorWriteNode)
- ).void
- end
- def initialize(source, node_id, location, flags, write); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#14727
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#14660
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#14665
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#14675
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#14670
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?write: ConstantWriteNode | ConstantAndWriteNode | ConstantOrWriteNode | ConstantOperatorWriteNode | ConstantPathWriteNode | ConstantPathAndWriteNode | ConstantPathOrWriteNode | ConstantPathOperatorWriteNode) -> ShareableConstantNode
- #
- # source://prism//lib/prism/node.rb#14680
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- write: T.any(Prism::ConstantWriteNode, Prism::ConstantAndWriteNode, Prism::ConstantOrWriteNode, Prism::ConstantOperatorWriteNode, Prism::ConstantPathWriteNode, Prism::ConstantPathAndWriteNode, Prism::ConstantPathOrWriteNode, Prism::ConstantPathOperatorWriteNode)
- ).returns(Prism::ShareableConstantNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), write: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#14665
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, write: ConstantWriteNode | ConstantAndWriteNode | ConstantOrWriteNode | ConstantOperatorWriteNode | ConstantPathWriteNode | ConstantPathAndWriteNode | ConstantPathOrWriteNode | ConstantPathOperatorWriteNode }
- #
- # source://prism//lib/prism/node.rb#14688
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- # def experimental_copy?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#14703
- sig { returns(T::Boolean) }
- def experimental_copy?; end
-
- # def experimental_everything?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#14698
- sig { returns(T::Boolean) }
- def experimental_everything?; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#14711
- sig { override.returns(String) }
- def inspect; end
-
- # def literal?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#14693
- sig { returns(T::Boolean) }
- def literal?; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#14716
- sig { override.returns(Symbol) }
- def type; end
-
- # The constant write that should be modified with the shareability state.
- #
- # source://prism//lib/prism/node.rb#14708
- sig do
- returns(T.any(Prism::ConstantWriteNode, Prism::ConstantAndWriteNode, Prism::ConstantOrWriteNode, Prism::ConstantOperatorWriteNode, Prism::ConstantPathWriteNode, Prism::ConstantPathAndWriteNode, Prism::ConstantPathOrWriteNode, Prism::ConstantPathOperatorWriteNode))
- end
- def write; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#14721
- def type; end
- end
-end
-
-# Flags for shareable constant nodes.
-#
-# source://prism//lib/prism/node.rb#16773
-module Prism::ShareableConstantNodeFlags; end
-
-# constant writes that should be modified with shareable constant value experimental copy
-#
-# source://prism//lib/prism/node.rb#16781
-Prism::ShareableConstantNodeFlags::EXPERIMENTAL_COPY = T.let(T.unsafe(nil), Integer)
-
-# constant writes that should be modified with shareable constant value experimental everything
-#
-# source://prism//lib/prism/node.rb#16778
-Prism::ShareableConstantNodeFlags::EXPERIMENTAL_EVERYTHING = T.let(T.unsafe(nil), Integer)
-
-# constant writes that should be modified with shareable constant value literal
-#
-# source://prism//lib/prism/node.rb#16775
-Prism::ShareableConstantNodeFlags::LITERAL = T.let(T.unsafe(nil), Integer)
-
-# Represents a singleton class declaration involving the `class` keyword.
-#
-# class << self end
-# ^^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#14738
-class Prism::SingletonClassNode < ::Prism::Node
- # Initialize a new SingletonClassNode node.
- #
- # @return [SingletonClassNode] a new instance of SingletonClassNode
- #
- # source://prism//lib/prism/node.rb#14740
- def initialize(source, node_id, location, flags, locals, class_keyword_loc, operator_loc, expression, body, end_keyword_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#14851
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#14754
- def accept(visitor); end
-
- # attr_reader body: Prism::node?
- #
- # source://prism//lib/prism/node.rb#14810
- def body; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#14759
- def child_nodes; end
-
- # def class_keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#14820
- def class_keyword; end
-
- # attr_reader class_keyword_loc: Location
- #
- # source://prism//lib/prism/node.rb#14793
- def class_keyword_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#14772
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#14764
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?locals: Array[Symbol], ?class_keyword_loc: Location, ?operator_loc: Location, ?expression: Prism::node, ?body: Prism::node?, ?end_keyword_loc: Location) -> SingletonClassNode
- #
- # source://prism//lib/prism/node.rb#14777
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), locals: T.unsafe(nil), class_keyword_loc: T.unsafe(nil), operator_loc: T.unsafe(nil), expression: T.unsafe(nil), body: T.unsafe(nil), end_keyword_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#14759
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, locals: Array[Symbol], class_keyword_loc: Location, operator_loc: Location, expression: Prism::node, body: Prism::node?, end_keyword_loc: Location }
- #
- # source://prism//lib/prism/node.rb#14785
- def deconstruct_keys(keys); end
-
- # def end_keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#14830
- def end_keyword; end
-
- # attr_reader end_keyword_loc: Location
- #
- # source://prism//lib/prism/node.rb#14813
- def end_keyword_loc; end
-
- # attr_reader expression: Prism::node
- #
- # source://prism//lib/prism/node.rb#14807
- def expression; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#14835
- sig { override.returns(String) }
- def inspect; end
-
- # attr_reader locals: Array[Symbol]
- #
- # source://prism//lib/prism/node.rb#14790
- def locals; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#14825
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#14800
- def operator_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#14840
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#14845
- def type; end
- end
-end
-
-# This represents a source of Ruby code that has been parsed. It is used in
-# conjunction with locations to allow them to resolve line numbers and source
-# ranges.
-#
-# source://prism//lib/prism/parse_result.rb#7
-class Prism::Source
- # Create a new source object with the given source code.
- #
- # @return [Source] a new instance of Source
- #
- # source://prism//lib/prism/parse_result.rb#30
- sig { params(source: String, start_line: Integer, offsets: T::Array[Integer]).void }
- def initialize(source, start_line = T.unsafe(nil), offsets = T.unsafe(nil)); end
-
- # Return the column number in characters for the given byte offset.
- #
- # source://prism//lib/prism/parse_result.rb#82
- sig { params(byte_offset: Integer).returns(Integer) }
- def character_column(byte_offset); end
-
- # Return the character offset for the given byte offset.
- #
- # source://prism//lib/prism/parse_result.rb#77
- sig { params(byte_offset: Integer).returns(Integer) }
- def character_offset(byte_offset); end
-
- # Returns the column number in code units for the given encoding for the
- # given byte offset.
- #
- # source://prism//lib/prism/parse_result.rb#104
- sig { params(byte_offset: Integer, encoding: Encoding).returns(Integer) }
- def code_units_column(byte_offset, encoding); end
-
- # Returns the offset from the start of the file for the given byte offset
- # counting in code units for the given encoding.
- #
- # This method is tested with UTF-8, UTF-16, and UTF-32. If there is the
- # concept of code units that differs from the number of characters in other
- # encodings, it is not captured here.
- #
- # source://prism//lib/prism/parse_result.rb#92
- sig { params(byte_offset: Integer, encoding: Encoding).returns(Integer) }
- def code_units_offset(byte_offset, encoding); end
-
- # Return the column number for the given byte offset.
- #
- # source://prism//lib/prism/parse_result.rb#72
- sig { params(byte_offset: Integer).returns(Integer) }
- def column(byte_offset); end
-
- # Returns the encoding of the source code, which is set by parameters to the
- # parser or by the encoding magic comment.
- #
- # source://prism//lib/prism/parse_result.rb#38
- sig { returns(Encoding) }
- def encoding; end
-
- # Binary search through the offsets to find the line number for the given
- # byte offset.
- #
- # source://prism//lib/prism/parse_result.rb#55
- sig { params(byte_offset: Integer).returns(Integer) }
- def line(byte_offset); end
-
- # Returns the byte offset of the end of the line corresponding to the given
- # byte offset.
- #
- # source://prism//lib/prism/parse_result.rb#67
- def line_end(byte_offset); end
-
- # Return the byte offset of the start of the line corresponding to the given
- # byte offset.
- #
- # source://prism//lib/prism/parse_result.rb#61
- sig { params(byte_offset: Integer).returns(Integer) }
- def line_start(byte_offset); end
-
- # Returns the lines of the source code as an array of strings.
- #
- # source://prism//lib/prism/parse_result.rb#43
- sig { returns(T::Array[String]) }
- def lines; end
-
- # The list of newline byte offsets in the source code.
- #
- # source://prism//lib/prism/parse_result.rb#27
- sig { returns(T::Array[Integer]) }
- def offsets; end
-
- # Perform a byteslice on the source code using the given byte offset and
- # byte length.
- #
- # source://prism//lib/prism/parse_result.rb#49
- sig { params(byte_offset: Integer, length: Integer).returns(String) }
- def slice(byte_offset, length); end
-
- # The source code that this source object represents.
- #
- # source://prism//lib/prism/parse_result.rb#21
- sig { returns(String) }
- def source; end
-
- # The line number where this source starts.
- #
- # source://prism//lib/prism/parse_result.rb#24
- sig { returns(Integer) }
- def start_line; end
-
- private
-
- # Binary search through the offsets to find the line number for the given
- # byte offset.
- #
- # source://prism//lib/prism/parse_result.rb#112
- def find_line(byte_offset); end
-
- class << self
- # Create a new source object with the given source code. This method should
- # be used instead of `new` and it will return either a `Source` or a
- # specialized and more performant `ASCIISource` if no multibyte characters
- # are present in the source code.
- #
- # source://prism//lib/prism/parse_result.rb#12
- def for(source, start_line = T.unsafe(nil), offsets = T.unsafe(nil)); end
- end
-end
-
-# Represents the use of the `__ENCODING__` keyword.
-#
-# __ENCODING__
-# ^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#14867
-class Prism::SourceEncodingNode < ::Prism::Node
- # Initialize a new SourceEncodingNode node.
- #
- # @return [SourceEncodingNode] a new instance of SourceEncodingNode
- #
- # source://prism//lib/prism/node.rb#14869
- def initialize(source, node_id, location, flags); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#14926
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#14877
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#14882
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#14892
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#14887
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer) -> SourceEncodingNode
- #
- # source://prism//lib/prism/node.rb#14897
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#14882
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location }
- #
- # source://prism//lib/prism/node.rb#14905
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#14910
- sig { override.returns(String) }
- def inspect; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#14915
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#14920
- def type; end
- end
-end
-
-# Represents the use of the `__FILE__` keyword.
-#
-# __FILE__
-# ^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#14935
-class Prism::SourceFileNode < ::Prism::Node
- # Initialize a new SourceFileNode node.
- #
- # @return [SourceFileNode] a new instance of SourceFileNode
- #
- # source://prism//lib/prism/node.rb#14937
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- filepath: String
- ).void
- end
- def initialize(source, node_id, location, flags, filepath); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#15018
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#14946
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#14951
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#14961
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#14956
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?filepath: String) -> SourceFileNode
- #
- # source://prism//lib/prism/node.rb#14966
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- filepath: String
- ).returns(Prism::SourceFileNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), filepath: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#14951
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, filepath: String }
- #
- # source://prism//lib/prism/node.rb#14974
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # Represents the file path being parsed. This corresponds directly to the `filepath` option given to the various `Prism::parse*` APIs.
- #
- # source://prism//lib/prism/node.rb#14999
- sig { returns(String) }
- def filepath; end
-
- # def forced_binary_encoding?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#14984
- sig { returns(T::Boolean) }
- def forced_binary_encoding?; end
-
- # def forced_utf8_encoding?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#14979
- sig { returns(T::Boolean) }
- def forced_utf8_encoding?; end
-
- # def frozen?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#14989
- sig { returns(T::Boolean) }
- def frozen?; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#15002
- sig { override.returns(String) }
- def inspect; end
-
- # def mutable?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#14994
- sig { returns(T::Boolean) }
- def mutable?; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#15007
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#15012
- def type; end
- end
-end
-
-# Represents the use of the `__LINE__` keyword.
-#
-# __LINE__
-# ^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#15029
-class Prism::SourceLineNode < ::Prism::Node
- # Initialize a new SourceLineNode node.
- #
- # @return [SourceLineNode] a new instance of SourceLineNode
- #
- # source://prism//lib/prism/node.rb#15031
- def initialize(source, node_id, location, flags); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#15088
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#15039
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#15044
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#15054
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#15049
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer) -> SourceLineNode
- #
- # source://prism//lib/prism/node.rb#15059
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#15044
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location }
- #
- # source://prism//lib/prism/node.rb#15067
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#15072
- sig { override.returns(String) }
- def inspect; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#15077
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#15082
- def type; end
- end
-end
-
-# Represents the use of the splat operator.
-#
-# [*a]
-# ^^
-#
-# source://prism//lib/prism/node.rb#15097
-class Prism::SplatNode < ::Prism::Node
- # Initialize a new SplatNode node.
- #
- # @return [SplatNode] a new instance of SplatNode
- #
- # source://prism//lib/prism/node.rb#15099
- def initialize(source, node_id, location, flags, operator_loc, expression); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#15175
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#15109
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#15114
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#15126
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#15119
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?operator_loc: Location, ?expression: Prism::node?) -> SplatNode
- #
- # source://prism//lib/prism/node.rb#15131
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), operator_loc: T.unsafe(nil), expression: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#15114
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, operator_loc: Location, expression: Prism::node? }
- #
- # source://prism//lib/prism/node.rb#15139
- def deconstruct_keys(keys); end
-
- # attr_reader expression: Prism::node?
- #
- # source://prism//lib/prism/node.rb#15151
- def expression; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#15159
- sig { override.returns(String) }
- def inspect; end
-
- # def operator: () -> String
- #
- # source://prism//lib/prism/node.rb#15154
- def operator; end
-
- # attr_reader operator_loc: Location
- #
- # source://prism//lib/prism/node.rb#15144
- def operator_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#15164
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#15169
- def type; end
- end
-end
-
-# Represents a set of statements contained within some scope.
-#
-# foo; bar; baz
-# ^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#15186
-class Prism::StatementsNode < ::Prism::Node
- # Initialize a new StatementsNode node.
- #
- # @return [StatementsNode] a new instance of StatementsNode
- #
- # source://prism//lib/prism/node.rb#15188
- def initialize(source, node_id, location, flags, body); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#15249
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#15197
- def accept(visitor); end
-
- # attr_reader body: Array[Prism::node]
- #
- # source://prism//lib/prism/node.rb#15230
- def body; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#15202
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#15212
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#15207
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?body: Array[Prism::node]) -> StatementsNode
- #
- # source://prism//lib/prism/node.rb#15217
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), body: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#15202
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, body: Array[Prism::node] }
- #
- # source://prism//lib/prism/node.rb#15225
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#15233
- sig { override.returns(String) }
- def inspect; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#15238
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#15243
- def type; end
- end
-end
-
-# Flags for string nodes.
-#
-# source://prism//lib/prism/node.rb#16785
-module Prism::StringFlags; end
-
-# internal bytes forced the encoding to binary
-#
-# source://prism//lib/prism/node.rb#16790
-Prism::StringFlags::FORCED_BINARY_ENCODING = T.let(T.unsafe(nil), Integer)
-
-# internal bytes forced the encoding to UTF-8
-#
-# source://prism//lib/prism/node.rb#16787
-Prism::StringFlags::FORCED_UTF8_ENCODING = T.let(T.unsafe(nil), Integer)
-
-# source://prism//lib/prism/node.rb#16793
-Prism::StringFlags::FROZEN = T.let(T.unsafe(nil), Integer)
-
-# source://prism//lib/prism/node.rb#16796
-Prism::StringFlags::MUTABLE = T.let(T.unsafe(nil), Integer)
-
-# Represents a string literal, a string contained within a `%w` list, or plain string content within an interpolated string.
-#
-# "foo"
-# ^^^^^
-#
-# %w[foo]
-# ^^^
-#
-# "foo #{bar} baz"
-# ^^^^ ^^^^
-#
-# source://prism//lib/prism/node.rb#15266
-class Prism::StringNode < ::Prism::Node
- include ::Prism::HeredocQuery
-
- # Initialize a new StringNode node.
- #
- # @return [StringNode] a new instance of StringNode
- #
- # source://prism//lib/prism/node.rb#15268
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- opening_loc: T.nilable(Prism::Location),
- content_loc: Prism::Location,
- closing_loc: T.nilable(Prism::Location),
- unescaped: String
- ).void
- end
- def initialize(source, node_id, location, flags, opening_loc, content_loc, closing_loc, unescaped); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#15400
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#15280
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#15285
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def closing: () -> String?
- #
- # source://prism//lib/prism/node.rb#15379
- sig { returns(T.nilable(String)) }
- def closing; end
-
- # attr_reader closing_loc: Location?
- #
- # source://prism//lib/prism/node.rb#15353
- sig { returns(T.nilable(Prism::Location)) }
- def closing_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#15295
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#15290
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def content: () -> String
- #
- # source://prism//lib/prism/node.rb#15374
- sig { returns(String) }
- def content; end
-
- # attr_reader content_loc: Location
- #
- # source://prism//lib/prism/node.rb#15346
- sig { returns(Prism::Location) }
- def content_loc; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?opening_loc: Location?, ?content_loc: Location, ?closing_loc: Location?, ?unescaped: String) -> StringNode
- #
- # source://prism//lib/prism/node.rb#15300
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- opening_loc: T.nilable(Prism::Location),
- content_loc: Prism::Location,
- closing_loc: T.nilable(Prism::Location),
- unescaped: String
- ).returns(Prism::StringNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), opening_loc: T.unsafe(nil), content_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), unescaped: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#15285
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, opening_loc: Location?, content_loc: Location, closing_loc: Location?, unescaped: String }
- #
- # source://prism//lib/prism/node.rb#15308
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def forced_binary_encoding?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#15318
- sig { returns(T::Boolean) }
- def forced_binary_encoding?; end
-
- # def forced_utf8_encoding?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#15313
- sig { returns(T::Boolean) }
- def forced_utf8_encoding?; end
-
- # def frozen?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#15323
- sig { returns(T::Boolean) }
- def frozen?; end
-
- sig { returns(T::Boolean) }
- def heredoc?; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#15384
- sig { override.returns(String) }
- def inspect; end
-
- # def mutable?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#15328
- sig { returns(T::Boolean) }
- def mutable?; end
-
- # def opening: () -> String?
- #
- # source://prism//lib/prism/node.rb#15369
- sig { returns(T.nilable(String)) }
- def opening; end
-
- # attr_reader opening_loc: Location?
- #
- # source://prism//lib/prism/node.rb#15333
- sig { returns(T.nilable(Prism::Location)) }
- def opening_loc; end
-
- # Occasionally it's helpful to treat a string as if it were interpolated so
- # that there's a consistent interface for working with strings.
- #
- # source://prism//lib/prism/node_ext.rb#72
- sig { returns(Prism::InterpolatedStringNode) }
- def to_interpolated; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#15389
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader unescaped: String
- #
- # source://prism//lib/prism/node.rb#15366
- sig { returns(String) }
- def unescaped; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#15394
- def type; end
- end
-end
-
-# Represents the use of the `super` keyword with parentheses or arguments.
-#
-# super()
-# ^^^^^^^
-#
-# super foo, bar
-# ^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#15417
-class Prism::SuperNode < ::Prism::Node
- # Initialize a new SuperNode node.
- #
- # @return [SuperNode] a new instance of SuperNode
- #
- # source://prism//lib/prism/node.rb#15419
- def initialize(source, node_id, location, flags, keyword_loc, lparen_loc, arguments, rparen_loc, block); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#15538
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#15432
- def accept(visitor); end
-
- # attr_reader arguments: ArgumentsNode?
- #
- # source://prism//lib/prism/node.rb#15488
- def arguments; end
-
- # attr_reader block: Prism::node?
- #
- # source://prism//lib/prism/node.rb#15504
- def block; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#15437
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#15450
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#15442
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?keyword_loc: Location, ?lparen_loc: Location?, ?arguments: ArgumentsNode?, ?rparen_loc: Location?, ?block: Prism::node?) -> SuperNode
- #
- # source://prism//lib/prism/node.rb#15455
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), keyword_loc: T.unsafe(nil), lparen_loc: T.unsafe(nil), arguments: T.unsafe(nil), rparen_loc: T.unsafe(nil), block: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#15437
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, keyword_loc: Location, lparen_loc: Location?, arguments: ArgumentsNode?, rparen_loc: Location?, block: Prism::node? }
- #
- # source://prism//lib/prism/node.rb#15463
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#15522
- sig { override.returns(String) }
- def inspect; end
-
- # def keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#15507
- def keyword; end
-
- # attr_reader keyword_loc: Location
- #
- # source://prism//lib/prism/node.rb#15468
- def keyword_loc; end
-
- # def lparen: () -> String?
- #
- # source://prism//lib/prism/node.rb#15512
- def lparen; end
-
- # attr_reader lparen_loc: Location?
- #
- # source://prism//lib/prism/node.rb#15475
- def lparen_loc; end
-
- # def rparen: () -> String?
- #
- # source://prism//lib/prism/node.rb#15517
- def rparen; end
-
- # attr_reader rparen_loc: Location?
- #
- # source://prism//lib/prism/node.rb#15491
- def rparen_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#15527
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#15532
- def type; end
- end
-end
-
-# Flags for symbol nodes.
-#
-# source://prism//lib/prism/node.rb#16800
-module Prism::SymbolFlags; end
-
-# internal bytes forced the encoding to binary
-#
-# source://prism//lib/prism/node.rb#16805
-Prism::SymbolFlags::FORCED_BINARY_ENCODING = T.let(T.unsafe(nil), Integer)
-
-# internal bytes forced the encoding to US-ASCII
-#
-# source://prism//lib/prism/node.rb#16808
-Prism::SymbolFlags::FORCED_US_ASCII_ENCODING = T.let(T.unsafe(nil), Integer)
-
-# internal bytes forced the encoding to UTF-8
-#
-# source://prism//lib/prism/node.rb#16802
-Prism::SymbolFlags::FORCED_UTF8_ENCODING = T.let(T.unsafe(nil), Integer)
-
-# Represents a symbol literal or a symbol contained within a `%i` list.
-#
-# :foo
-# ^^^^
-#
-# %i[foo]
-# ^^^
-#
-# source://prism//lib/prism/node.rb#15555
-class Prism::SymbolNode < ::Prism::Node
- # Initialize a new SymbolNode node.
- #
- # @return [SymbolNode] a new instance of SymbolNode
- #
- # source://prism//lib/prism/node.rb#15557
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- opening_loc: T.nilable(Prism::Location),
- value_loc: T.nilable(Prism::Location),
- closing_loc: T.nilable(Prism::Location),
- unescaped: String
- ).void
- end
- def initialize(source, node_id, location, flags, opening_loc, value_loc, closing_loc, unescaped); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#15690
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#15569
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#15574
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def closing: () -> String?
- #
- # source://prism//lib/prism/node.rb#15669
- sig { returns(T.nilable(String)) }
- def closing; end
-
- # attr_reader closing_loc: Location?
- #
- # source://prism//lib/prism/node.rb#15643
- sig { returns(T.nilable(Prism::Location)) }
- def closing_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#15584
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#15579
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?opening_loc: Location?, ?value_loc: Location?, ?closing_loc: Location?, ?unescaped: String) -> SymbolNode
- #
- # source://prism//lib/prism/node.rb#15589
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- opening_loc: T.nilable(Prism::Location),
- value_loc: T.nilable(Prism::Location),
- closing_loc: T.nilable(Prism::Location),
- unescaped: String
- ).returns(Prism::SymbolNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), opening_loc: T.unsafe(nil), value_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), unescaped: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#15574
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, opening_loc: Location?, value_loc: Location?, closing_loc: Location?, unescaped: String }
- #
- # source://prism//lib/prism/node.rb#15597
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def forced_binary_encoding?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#15607
- sig { returns(T::Boolean) }
- def forced_binary_encoding?; end
-
- # def forced_us_ascii_encoding?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#15612
- sig { returns(T::Boolean) }
- def forced_us_ascii_encoding?; end
-
- # def forced_utf8_encoding?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#15602
- sig { returns(T::Boolean) }
- def forced_utf8_encoding?; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#15674
- sig { override.returns(String) }
- def inspect; end
-
- # def opening: () -> String?
- #
- # source://prism//lib/prism/node.rb#15659
- sig { returns(T.nilable(String)) }
- def opening; end
-
- # attr_reader opening_loc: Location?
- #
- # source://prism//lib/prism/node.rb#15617
- sig { returns(T.nilable(Prism::Location)) }
- def opening_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#15679
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader unescaped: String
- #
- # source://prism//lib/prism/node.rb#15656
- sig { returns(String) }
- def unescaped; end
-
- # def value: () -> String?
- #
- # source://prism//lib/prism/node.rb#15664
- sig { returns(T.nilable(String)) }
- def value; end
-
- # attr_reader value_loc: Location?
- #
- # source://prism//lib/prism/node.rb#15630
- sig { returns(T.nilable(Prism::Location)) }
- def value_loc; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#15684
- def type; end
- end
-end
-
-# This represents a token from the Ruby source.
-#
-# source://prism//lib/prism/parse_result.rb#662
-class Prism::Token
- # Create a new token object with the given type, value, and location.
- #
- # @return [Token] a new instance of Token
- #
- # source://prism//lib/prism/parse_result.rb#674
- sig { params(source: Prism::Source, type: Symbol, value: String, location: T.any(Integer, Prism::Location)).void }
- def initialize(source, type, value, location); end
-
- # Returns true if the given other token is equal to this token.
- #
- # source://prism//lib/prism/parse_result.rb#709
- sig { params(other: T.untyped).returns(T::Boolean) }
- def ==(other); end
-
- # Implement the hash pattern matching interface for Token.
- #
- # source://prism//lib/prism/parse_result.rb#682
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- # Returns a string representation of this token.
- #
- # source://prism//lib/prism/parse_result.rb#716
- def inspect; end
-
- # A Location object representing the location of this token in the source.
- #
- # source://prism//lib/prism/parse_result.rb#687
- sig { returns(Prism::Location) }
- def location; end
-
- # Implement the pretty print interface for Token.
- #
- # source://prism//lib/prism/parse_result.rb#694
- sig { params(q: T.untyped).void }
- def pretty_print(q); end
-
- # The type of token that this token is.
- #
- # source://prism//lib/prism/parse_result.rb#668
- sig { returns(Symbol) }
- def type; end
-
- # A byteslice of the source that this token represents.
- #
- # source://prism//lib/prism/parse_result.rb#671
- sig { returns(String) }
- def value; end
-
- private
-
- # The Source object that represents the source this token came from.
- #
- # source://prism//lib/prism/parse_result.rb#664
- sig { returns(Prism::Source) }
- def source; end
-end
-
-# This module is responsible for converting the prism syntax tree into other
-# syntax trees.
-#
-# source://prism//lib/prism/translation.rb#6
-module Prism::Translation; end
-
-class Prism::Translation::Parser < Parser::Base
- sig { overridable.returns(Integer) }
- def version; end
-end
-
-class Prism::Translation::Parser33 < Prism::Translation::Parser
- sig { override.returns(Integer) }
- def version; end
-end
-
-class Prism::Translation::Parser34 < Prism::Translation::Parser
- sig { override.returns(Integer) }
- def version; end
-end
-
-# This class provides a compatibility layer between prism and Ripper. It
-# functions by parsing the entire tree first and then walking it and
-# executing each of the Ripper callbacks as it goes. To use this class, you
-# treat `Prism::Translation::Ripper` effectively as you would treat the
-# `Ripper` class.
-#
-# Note that this class will serve the most common use cases, but Ripper's
-# API is extensive and undocumented. It relies on reporting the state of the
-# parser at any given time. We do our best to replicate that here, but
-# because it is a different architecture it is not possible to perfectly
-# replicate the behavior of Ripper.
-#
-# The main known difference is that we may omit dispatching some events in
-# some cases. This impacts the following events:
-#
-# - on_assign_error
-# - on_comma
-# - on_ignored_nl
-# - on_ignored_sp
-# - on_kw
-# - on_label_end
-# - on_lbrace
-# - on_lbracket
-# - on_lparen
-# - on_nl
-# - on_op
-# - on_operator_ambiguous
-# - on_rbrace
-# - on_rbracket
-# - on_rparen
-# - on_semicolon
-# - on_sp
-# - on_symbeg
-# - on_tstring_beg
-# - on_tstring_end
-#
-# source://prism//lib/prism/translation/ripper.rb#43
-class Prism::Translation::Ripper < ::Prism::Compiler
- # Create a new Translation::Ripper object with the given source.
- #
- # @return [Ripper] a new instance of Ripper
- #
- # source://prism//lib/prism/translation/ripper.rb#444
- def initialize(source, filename = T.unsafe(nil), lineno = T.unsafe(nil)); end
-
- # The current column number of the parser.
- #
- # source://prism//lib/prism/translation/ripper.rb#441
- def column; end
-
- # True if the parser encountered an error during parsing.
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/translation/ripper.rb#457
- sig { returns(T::Boolean) }
- def error?; end
-
- # The filename of the source being parsed.
- #
- # source://prism//lib/prism/translation/ripper.rb#435
- def filename; end
-
- # The current line number of the parser.
- #
- # source://prism//lib/prism/translation/ripper.rb#438
- def lineno; end
-
- # Parse the source and return the result.
- #
- # source://prism//lib/prism/translation/ripper.rb#462
- sig { returns(T.untyped) }
- def parse; end
-
- # The source that is being parsed.
- #
- # source://prism//lib/prism/translation/ripper.rb#432
- def source; end
-
- # alias $foo $bar
- # ^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#561
- def visit_alias_global_variable_node(node); end
-
- # alias foo bar
- # ^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#551
- def visit_alias_method_node(node); end
-
- # foo => bar | baz
- # ^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#585
- def visit_alternation_pattern_node(node); end
-
- # a and b
- # ^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#605
- def visit_and_node(node); end
-
- # foo(bar)
- # ^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#796
- def visit_arguments_node(node); end
-
- # []
- # ^^
- #
- # source://prism//lib/prism/translation/ripper.rb#615
- def visit_array_node(node); end
-
- # foo => [bar]
- # ^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#775
- def visit_array_pattern_node(node); end
-
- # { a: 1 }
- # ^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#803
- def visit_assoc_node(node); end
-
- # def foo(**); bar(**); end
- # ^^
- #
- # { **foo }
- # ^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#816
- def visit_assoc_splat_node(node); end
-
- # $+
- # ^^
- #
- # source://prism//lib/prism/translation/ripper.rb#825
- def visit_back_reference_read_node(node); end
-
- # begin end
- # ^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#832
- def visit_begin_node(node); end
-
- # foo(&bar)
- # ^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#896
- def visit_block_argument_node(node); end
-
- # foo { |; bar| }
- # ^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#902
- def visit_block_local_variable_node(node); end
-
- # Visit a BlockNode.
- #
- # source://prism//lib/prism/translation/ripper.rb#908
- def visit_block_node(node); end
-
- # def foo(&bar); end
- # ^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#944
- def visit_block_parameter_node(node); end
-
- # A block's parameters.
- #
- # source://prism//lib/prism/translation/ripper.rb#958
- def visit_block_parameters_node(node); end
-
- # break
- # ^^^^^
- #
- # break foo
- # ^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#982
- def visit_break_node(node); end
-
- # foo.bar &&= baz
- # ^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1194
- def visit_call_and_write_node(node); end
-
- # foo
- # ^^^
- #
- # foo.bar
- # ^^^^^^^
- #
- # foo.bar() {}
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1002
- def visit_call_node(node); end
-
- # foo.bar += baz
- # ^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1172
- def visit_call_operator_write_node(node); end
-
- # foo.bar ||= baz
- # ^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1216
- def visit_call_or_write_node(node); end
-
- # foo.bar, = 1
- # ^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1238
- def visit_call_target_node(node); end
-
- # foo => bar => baz
- # ^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1263
- def visit_capture_pattern_node(node); end
-
- # case foo; in bar; end
- # ^^^^^^^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1286
- def visit_case_match_node(node); end
-
- # case foo; when bar; end
- # ^^^^^^^^^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1273
- def visit_case_node(node); end
-
- # class Foo; end
- # ^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1299
- def visit_class_node(node); end
-
- # @@foo &&= bar
- # ^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1352
- def visit_class_variable_and_write_node(node); end
-
- # @@foo += bar
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1338
- def visit_class_variable_operator_write_node(node); end
-
- # @@foo ||= bar
- # ^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1366
- def visit_class_variable_or_write_node(node); end
-
- # @@foo
- # ^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1317
- def visit_class_variable_read_node(node); end
-
- # @@foo, = bar
- # ^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1380
- def visit_class_variable_target_node(node); end
-
- # @@foo = 1
- # ^^^^^^^^^
- #
- # @@foo, @@bar = 1
- # ^^^^^ ^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1327
- def visit_class_variable_write_node(node); end
-
- # Foo &&= bar
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1422
- def visit_constant_and_write_node(node); end
-
- # Foo += bar
- # ^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1408
- def visit_constant_operator_write_node(node); end
-
- # Foo ||= bar
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1436
- def visit_constant_or_write_node(node); end
-
- # Foo::Bar &&= baz
- # ^^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1523
- def visit_constant_path_and_write_node(node); end
-
- # Foo::Bar
- # ^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1457
- def visit_constant_path_node(node); end
-
- # Foo::Bar += baz
- # ^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1509
- def visit_constant_path_operator_write_node(node); end
-
- # Foo::Bar ||= baz
- # ^^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1537
- def visit_constant_path_or_write_node(node); end
-
- # Foo::Bar, = baz
- # ^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1551
- def visit_constant_path_target_node(node); end
-
- # Foo::Bar = 1
- # ^^^^^^^^^^^^
- #
- # Foo::Foo, Bar::Bar = 1
- # ^^^^^^^^ ^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1480
- def visit_constant_path_write_node(node); end
-
- # Foo
- # ^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1387
- def visit_constant_read_node(node); end
-
- # Foo, = bar
- # ^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1450
- def visit_constant_target_node(node); end
-
- # Foo = 1
- # ^^^^^^^
- #
- # Foo, Bar = 1
- # ^^^ ^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1397
- def visit_constant_write_node(node); end
-
- # def foo; end
- # ^^^^^^^^^^^^
- #
- # def self.foo; end
- # ^^^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1560
- def visit_def_node(node); end
-
- # defined? a
- # ^^^^^^^^^^
- #
- # defined?(a)
- # ^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1607
- def visit_defined_node(node); end
-
- # if foo then bar else baz end
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1614
- def visit_else_node(node); end
-
- # "foo #{bar}"
- # ^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1630
- def visit_embedded_statements_node(node); end
-
- # "foo #@bar"
- # ^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1651
- def visit_embedded_variable_node(node); end
-
- # Visit an EnsureNode node.
- #
- # source://prism//lib/prism/translation/ripper.rb#1662
- def visit_ensure_node(node); end
-
- # false
- # ^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1680
- def visit_false_node(node); end
-
- # foo => [*, bar, *]
- # ^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1687
- def visit_find_pattern_node(node); end
-
- # if foo .. bar; end
- # ^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1712
- def visit_flip_flop_node(node); end
-
- # 1.0
- # ^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1726
- def visit_float_node(node); end
-
- # for foo in bar do end
- # ^^^^^^^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1732
- def visit_for_node(node); end
-
- # def foo(...); bar(...); end
- # ^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1749
- def visit_forwarding_arguments_node(node); end
-
- # def foo(...); end
- # ^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1756
- def visit_forwarding_parameter_node(node); end
-
- # super
- # ^^^^^
- #
- # super {}
- # ^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1766
- def visit_forwarding_super_node(node); end
-
- # $foo &&= bar
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1815
- def visit_global_variable_and_write_node(node); end
-
- # $foo += bar
- # ^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1801
- def visit_global_variable_operator_write_node(node); end
-
- # $foo ||= bar
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1829
- def visit_global_variable_or_write_node(node); end
-
- # $foo
- # ^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1780
- def visit_global_variable_read_node(node); end
-
- # $foo, = bar
- # ^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1843
- def visit_global_variable_target_node(node); end
-
- # $foo = 1
- # ^^^^^^^^
- #
- # $foo, $bar = 1
- # ^^^^ ^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1790
- def visit_global_variable_write_node(node); end
-
- # {}
- # ^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1850
- def visit_hash_node(node); end
-
- # foo => {}
- # ^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1865
- def visit_hash_pattern_node(node); end
-
- # if foo then bar end
- # ^^^^^^^^^^^^^^^^^^^
- #
- # bar if foo
- # ^^^^^^^^^^
- #
- # foo ? bar : baz
- # ^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1907
- def visit_if_node(node); end
-
- # 1i
- # ^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1943
- def visit_imaginary_node(node); end
-
- # { foo: }
- # ^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1949
- def visit_implicit_node(node); end
-
- # foo { |bar,| }
- # ^
- #
- # source://prism//lib/prism/translation/ripper.rb#1954
- def visit_implicit_rest_node(node); end
-
- # case foo; in bar; end
- # ^^^^^^^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1961
- def visit_in_node(node); end
-
- # foo[bar] &&= baz
- # ^^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1996
- def visit_index_and_write_node(node); end
-
- # foo[bar] += baz
- # ^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#1979
- def visit_index_operator_write_node(node); end
-
- # foo[bar] ||= baz
- # ^^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2013
- def visit_index_or_write_node(node); end
-
- # foo[bar], = 1
- # ^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2030
- def visit_index_target_node(node); end
-
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2072
- def visit_instance_variable_and_write_node(node); end
-
- # ^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2058
- def visit_instance_variable_operator_write_node(node); end
-
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2086
- def visit_instance_variable_or_write_node(node); end
-
- # ^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2040
- def visit_instance_variable_read_node(node); end
-
- # @foo, = bar
- # ^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2100
- def visit_instance_variable_target_node(node); end
-
- # ^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2047
- def visit_instance_variable_write_node(node); end
-
- # 1
- # ^
- #
- # source://prism//lib/prism/translation/ripper.rb#2107
- def visit_integer_node(node); end
-
- # if /foo #{bar}/ then end
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2113
- def visit_interpolated_match_last_line_node(node); end
-
- # /foo #{bar}/
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2132
- def visit_interpolated_regular_expression_node(node); end
-
- # "foo #{bar}"
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2151
- def visit_interpolated_string_node(node); end
-
- # :"foo #{bar}"
- # ^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2179
- def visit_interpolated_symbol_node(node); end
-
- # `foo #{bar}`
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2192
- def visit_interpolated_x_string_node(node); end
-
- # -> { it }
- # ^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2222
- def visit_it_local_variable_read_node(node); end
-
- # -> { it }
- # ^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2229
- def visit_it_parameters_node(node); end
-
- # foo(bar: baz)
- # ^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2234
- def visit_keyword_hash_node(node); end
-
- # def foo(**bar); end
- # ^^^^^
- #
- # def foo(**); end
- # ^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2246
- def visit_keyword_rest_parameter_node(node); end
-
- # -> {}
- #
- # source://prism//lib/prism/translation/ripper.rb#2260
- def visit_lambda_node(node); end
-
- # foo &&= bar
- # ^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2352
- def visit_local_variable_and_write_node(node); end
-
- # foo += bar
- # ^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2338
- def visit_local_variable_operator_write_node(node); end
-
- # foo ||= bar
- # ^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2366
- def visit_local_variable_or_write_node(node); end
-
- # foo
- # ^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2320
- def visit_local_variable_read_node(node); end
-
- # foo, = bar
- # ^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2380
- def visit_local_variable_target_node(node); end
-
- # foo = 1
- # ^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2327
- def visit_local_variable_write_node(node); end
-
- # if /foo/ then end
- # ^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2387
- def visit_match_last_line_node(node); end
-
- # foo in bar
- # ^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2402
- def visit_match_predicate_node(node); end
-
- # foo => bar
- # ^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2411
- def visit_match_required_node(node); end
-
- # /(?<foo>foo)/ =~ bar
- # ^^^^^^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2420
- def visit_match_write_node(node); end
-
- # A node that is missing from the syntax tree. This is only used in the
- # case of a syntax error.
- #
- # source://prism//lib/prism/translation/ripper.rb#2426
- def visit_missing_node(node); end
-
- # module Foo; end
- # ^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2432
- def visit_module_node(node); end
-
- # (foo, bar), bar = qux
- # ^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2449
- def visit_multi_target_node(node); end
-
- # foo, bar = baz
- # ^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2503
- def visit_multi_write_node(node); end
-
- # next
- # ^^^^
- #
- # next foo
- # ^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2523
- def visit_next_node(node); end
-
- # nil
- # ^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2537
- def visit_nil_node(node); end
-
- # def foo(**nil); end
- # ^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2544
- def visit_no_keywords_parameter_node(node); end
-
- # -> { _1 + _2 }
- # ^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2553
- def visit_numbered_parameters_node(node); end
-
- # $1
- # ^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2558
- def visit_numbered_reference_read_node(node); end
-
- # def foo(bar: baz); end
- # ^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2565
- def visit_optional_keyword_parameter_node(node); end
-
- # def foo(bar = 1); end
- # ^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2575
- def visit_optional_parameter_node(node); end
-
- # a or b
- # ^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2585
- def visit_or_node(node); end
-
- # def foo(bar, *baz); end
- # ^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2595
- def visit_parameters_node(node); end
-
- # ()
- # ^^
- #
- # (1)
- # ^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2622
- def visit_parentheses_node(node); end
-
- # foo => ^(bar)
- # ^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2636
- def visit_pinned_expression_node(node); end
-
- # foo = 1 and bar => ^foo
- # ^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2645
- def visit_pinned_variable_node(node); end
-
- # END {}
- # ^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2651
- def visit_post_execution_node(node); end
-
- # BEGIN {}
- # ^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2666
- def visit_pre_execution_node(node); end
-
- # The top-level program node.
- #
- # source://prism//lib/prism/translation/ripper.rb#2680
- def visit_program_node(node); end
-
- # 0..5
- # ^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2691
- def visit_range_node(node); end
-
- # 1r
- # ^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2705
- def visit_rational_node(node); end
-
- # redo
- # ^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2711
- def visit_redo_node(node); end
-
- # /foo/
- # ^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2718
- def visit_regular_expression_node(node); end
-
- # def foo(bar:); end
- # ^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2740
- def visit_required_keyword_parameter_node(node); end
-
- # def foo(bar); end
- # ^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2747
- def visit_required_parameter_node(node); end
-
- # foo rescue bar
- # ^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2754
- def visit_rescue_modifier_node(node); end
-
- # begin; rescue; end
- # ^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2764
- def visit_rescue_node(node); end
-
- # def foo(*bar); end
- # ^^^^
- #
- # def foo(*); end
- # ^
- #
- # source://prism//lib/prism/translation/ripper.rb#2822
- def visit_rest_parameter_node(node); end
-
- # retry
- # ^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2834
- def visit_retry_node(node); end
-
- # return
- # ^^^^^^
- #
- # return 1
- # ^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2844
- def visit_return_node(node); end
-
- # self
- # ^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2858
- def visit_self_node(node); end
-
- # A shareable constant.
- #
- # source://prism//lib/prism/translation/ripper.rb#2864
- def visit_shareable_constant_node(node); end
-
- # class << self; end
- # ^^^^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2870
- def visit_singleton_class_node(node); end
-
- # __ENCODING__
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2880
- def visit_source_encoding_node(node); end
-
- # __FILE__
- # ^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2887
- def visit_source_file_node(node); end
-
- # __LINE__
- # ^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2894
- def visit_source_line_node(node); end
-
- # foo(*bar)
- # ^^^^
- #
- # def foo((bar, *baz)); end
- # ^^^^
- #
- # def foo(*); bar(*); end
- # ^
- #
- # source://prism//lib/prism/translation/ripper.rb#2907
- def visit_splat_node(node); end
-
- # A list of statements.
- #
- # source://prism//lib/prism/translation/ripper.rb#2912
- def visit_statements_node(node); end
-
- # "foo"
- # ^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#2929
- def visit_string_node(node); end
-
- # super(foo)
- # ^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#3061
- def visit_super_node(node); end
-
- # :foo
- # ^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#3082
- def visit_symbol_node(node); end
-
- # true
- # ^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#3106
- def visit_true_node(node); end
-
- # undef foo
- # ^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#3113
- def visit_undef_node(node); end
-
- # unless foo; bar end
- # ^^^^^^^^^^^^^^^^^^^
- #
- # bar unless foo
- # ^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#3125
- def visit_unless_node(node); end
-
- # until foo; bar end
- # ^^^^^^^^^^^^^^^^^
- #
- # bar until foo
- # ^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#3153
- def visit_until_node(node); end
-
- # case foo; when bar; end
- # ^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#3177
- def visit_when_node(node); end
-
- # while foo; bar end
- # ^^^^^^^^^^^^^^^^^^
- #
- # bar while foo
- # ^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#3198
- def visit_while_node(node); end
-
- # `foo`
- # ^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#3222
- def visit_x_string_node(node); end
-
- # yield
- # ^^^^^
- #
- # yield 1
- # ^^^^^^^
- #
- # source://prism//lib/prism/translation/ripper.rb#3245
- def visit_yield_node(node); end
-
- private
-
- # :stopdoc:
- #
- # source://prism//lib/prism/translation/ripper.rb#3389
- def _dispatch_0; end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def _dispatch_1(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def _dispatch_2(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3392
- def _dispatch_3(_, _, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3393
- def _dispatch_4(_, _, _, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3394
- def _dispatch_5(_, _, _, _, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3395
- def _dispatch_7(_, _, _, _, _, _, _); end
-
- # This method is responsible for updating lineno and column information
- # to reflect the current node.
- #
- # This method could be drastically improved with some caching on the start
- # of every line, but for now it's good enough.
- #
- # source://prism//lib/prism/translation/ripper.rb#3379
- def bounds(location); end
-
- # Returns true if the given node is a command node.
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/translation/ripper.rb#1163
- def command?(node); end
-
- # This method is called when the parser found syntax error.
- #
- # source://prism//lib/prism/translation/ripper.rb#3417
- def compile_error(msg); end
-
- # This method is provided by the Ripper C extension. It is called when a
- # string needs to be dedented because of a tilde heredoc. It is expected
- # that it will modify the string in place and return the number of bytes
- # that were removed.
- #
- # source://prism//lib/prism/translation/ripper.rb#3432
- def dedent_string(string, width); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_BEGIN(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_CHAR(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_END(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on___end__(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_alias(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_alias_error(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_aref(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_aref_field(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_arg_ambiguous(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_arg_paren(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_args_add(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_args_add_block(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_args_add_star(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3389
- def on_args_forward; end
-
- # source://prism//lib/prism/translation/ripper.rb#3389
- def on_args_new; end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_array(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3393
- def on_aryptn(_, _, _, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_assign(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_assign_error(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_assoc_new(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_assoc_splat(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_assoclist_from_args(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_backref(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_backtick(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_bare_assoc_hash(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_begin(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3392
- def on_binary(_, _, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_block_var(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_blockarg(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3393
- def on_bodystmt(_, _, _, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_brace_block(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_break(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3392
- def on_call(_, _, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_case(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3392
- def on_class(_, _, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_class_name_error(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_comma(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_command(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3393
- def on_command_call(_, _, _, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_comment(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_const(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_const_path_field(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_const_path_ref(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_const_ref(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_cvar(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3392
- def on_def(_, _, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_defined(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3394
- def on_defs(_, _, _, _, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_do_block(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_dot2(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_dot3(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_dyna_symbol(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_else(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3392
- def on_elsif(_, _, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_embdoc(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_embdoc_beg(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_embdoc_end(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_embexpr_beg(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_embexpr_end(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_embvar(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_ensure(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3389
- def on_excessed_comma; end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_fcall(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3392
- def on_field(_, _, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_float(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3393
- def on_fndptn(_, _, _, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3392
- def on_for(_, _, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_gvar(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_hash(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_heredoc_beg(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_heredoc_dedent(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_heredoc_end(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3392
- def on_hshptn(_, _, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_ident(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3392
- def on_if(_, _, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_if_mod(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3392
- def on_ifop(_, _, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_ignored_nl(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_ignored_sp(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_imaginary(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3392
- def on_in(_, _, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_int(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_ivar(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_kw(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_kwrest_param(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_label(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_label_end(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_lambda(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_lbrace(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_lbracket(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_lparen(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_magic_comment(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_massign(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_method_add_arg(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_method_add_block(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_mlhs_add(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_mlhs_add_post(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_mlhs_add_star(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3389
- def on_mlhs_new; end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_mlhs_paren(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_module(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_mrhs_add(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_mrhs_add_star(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3389
- def on_mrhs_new; end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_mrhs_new_from_args(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_next(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_nl(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_nokw_param(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_op(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3392
- def on_opassign(_, _, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_operator_ambiguous(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_param_error(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3395
- def on_params(_, _, _, _, _, _, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_paren(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_parse_error(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_period(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_program(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_qsymbols_add(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_qsymbols_beg(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3389
- def on_qsymbols_new; end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_qwords_add(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_qwords_beg(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3389
- def on_qwords_new; end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_rational(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_rbrace(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_rbracket(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3389
- def on_redo; end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_regexp_add(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_regexp_beg(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_regexp_end(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_regexp_literal(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3389
- def on_regexp_new; end
-
- # source://prism//lib/prism/translation/ripper.rb#3393
- def on_rescue(_, _, _, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_rescue_mod(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_rest_param(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3389
- def on_retry; end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_return(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3389
- def on_return0; end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_rparen(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_sclass(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_semicolon(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_sp(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_stmts_add(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3389
- def on_stmts_new; end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_string_add(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_string_concat(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3389
- def on_string_content; end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_string_dvar(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_string_embexpr(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_string_literal(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_super(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_symbeg(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_symbol(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_symbol_literal(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_symbols_add(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_symbols_beg(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3389
- def on_symbols_new; end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_tlambda(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_tlambeg(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_top_const_field(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_top_const_ref(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_tstring_beg(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_tstring_content(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_tstring_end(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_unary(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_undef(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3392
- def on_unless(_, _, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_unless_mod(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_until(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_until_mod(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_var_alias(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_var_field(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_var_ref(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_vcall(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3389
- def on_void_stmt; end
-
- # source://prism//lib/prism/translation/ripper.rb#3392
- def on_when(_, _, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_while(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_while_mod(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_word_add(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3389
- def on_word_new; end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_words_add(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_words_beg(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3389
- def on_words_new; end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_words_sep(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3391
- def on_xstring_add(_, _); end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_xstring_literal(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3389
- def on_xstring_new; end
-
- # source://prism//lib/prism/translation/ripper.rb#3390
- def on_yield(_); end
-
- # source://prism//lib/prism/translation/ripper.rb#3389
- def on_yield0; end
-
- # source://prism//lib/prism/translation/ripper.rb#3389
- def on_zsuper; end
-
- # Lazily initialize the parse result.
- #
- # source://prism//lib/prism/translation/ripper.rb#3271
- def result; end
-
- # Returns true if there is a comma between the two locations.
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/translation/ripper.rb#3284
- def trailing_comma?(left, right); end
-
- # Visit one side of an alias global variable node.
- #
- # source://prism//lib/prism/translation/ripper.rb#570
- def visit_alias_global_variable_node_value(node); end
-
- # Visit a list of elements, like the elements of an array or arguments.
- #
- # source://prism//lib/prism/translation/ripper.rb#756
- def visit_arguments(elements); end
-
- # Visit the clauses of a begin node to form an on_bodystmt call.
- #
- # source://prism//lib/prism/translation/ripper.rb#840
- def visit_begin_node_clauses(location, node, allow_newline); end
-
- # Visit the body of a structure that can have either a set of statements
- # or statements wrapped in rescue/else/ensure.
- #
- # source://prism//lib/prism/translation/ripper.rb#875
- def visit_body_node(location, node, allow_newline = T.unsafe(nil)); end
-
- # Visit the arguments and block of a call node and return the arguments
- # and block as they should be used.
- #
- # source://prism//lib/prism/translation/ripper.rb#1136
- def visit_call_node_arguments(arguments_node, block_node, trailing_comma); end
-
- # Visit a constant path that is part of a write node.
- #
- # source://prism//lib/prism/translation/ripper.rb#1489
- def visit_constant_path_write_node_target(node); end
-
- # Visit a destructured positional parameter node.
- #
- # source://prism//lib/prism/translation/ripper.rb#2609
- def visit_destructured_parameter_node(node); end
-
- # Visit a string that is expressed using a <<~ heredoc.
- #
- # source://prism//lib/prism/translation/ripper.rb#2980
- def visit_heredoc_node(parts, base); end
-
- # Ripper gives back the escaped string content but strips out the common
- # leading whitespace. Prism gives back the unescaped string content and
- # a location for the escaped string content. Unfortunately these don't
- # work well together, so here we need to re-derive the common leading
- # whitespace.
- #
- # source://prism//lib/prism/translation/ripper.rb#2955
- def visit_heredoc_node_whitespace(parts); end
-
- # Visit a heredoc node that is representing a string.
- #
- # source://prism//lib/prism/translation/ripper.rb#3026
- def visit_heredoc_string_node(node); end
-
- # Visit a heredoc node that is representing an xstring.
- #
- # source://prism//lib/prism/translation/ripper.rb#3043
- def visit_heredoc_x_string_node(node); end
-
- # Visit the targets of a multi-target node.
- #
- # source://prism//lib/prism/translation/ripper.rb#2462
- def visit_multi_target_node_targets(lefts, rest, rights, skippable); end
-
- # Visit a node that represents a number. We need to explicitly handle the
- # unary - operator.
- #
- # source://prism//lib/prism/translation/ripper.rb#3323
- def visit_number_node(node); end
-
- # Visit a pattern within a pattern match. This is used to bypass the
- # parenthesis node that can be used to wrap patterns.
- #
- # source://prism//lib/prism/translation/ripper.rb#595
- def visit_pattern_node(node); end
-
- # Visit the list of statements of a statements node. We support nil
- # statements in the list. This would normally not be allowed by the
- # structure of the prism parse tree, but we manually add them here so that
- # we can mirror Ripper's void stmt.
- #
- # source://prism//lib/prism/translation/ripper.rb#2921
- def visit_statements_node_body(body); end
-
- # Visit an individual part of a string-like node.
- #
- # source://prism//lib/prism/translation/ripper.rb#2211
- def visit_string_content(part); end
-
- # Visit the string content of a particular node. This method is used to
- # split into the various token types.
- #
- # source://prism//lib/prism/translation/ripper.rb#3296
- def visit_token(token, allow_keywords = T.unsafe(nil)); end
-
- # Dispatch a words_sep event that contains the space between the elements
- # of list literals.
- #
- # source://prism//lib/prism/translation/ripper.rb#745
- def visit_words_sep(opening_loc, previous, current); end
-
- # Visit a node that represents a write value. This is used to handle the
- # special case of an implicit array that is generated without brackets.
- #
- # source://prism//lib/prism/translation/ripper.rb#3341
- def visit_write_value(node); end
-
- # Returns true if there is a semicolon between the two locations.
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/translation/ripper.rb#3289
- def void_stmt?(left, right, allow_newline); end
-
- # This method is called when weak warning is produced by the parser.
- # +fmt+ and +args+ is printf style.
- #
- # source://prism//lib/prism/translation/ripper.rb#3408
- def warn(fmt, *args); end
-
- # This method is called when strong warning is produced by the parser.
- # +fmt+ and +args+ is printf style.
- #
- # source://prism//lib/prism/translation/ripper.rb#3413
- def warning(fmt, *args); end
-
- class << self
- # Tokenizes the Ruby program and returns an array of an array,
- # which is formatted like
- # <code>[[lineno, column], type, token, state]</code>.
- # The +filename+ argument is mostly ignored.
- # By default, this method does not handle syntax errors in +src+,
- # use the +raise_errors+ keyword to raise a SyntaxError for an error in +src+.
- #
- # require "ripper"
- # require "pp"
- #
- # pp Ripper.lex("def m(a) nil end")
- # #=> [[[1, 0], :on_kw, "def", FNAME ],
- # [[1, 3], :on_sp, " ", FNAME ],
- # [[1, 4], :on_ident, "m", ENDFN ],
- # [[1, 5], :on_lparen, "(", BEG|LABEL],
- # [[1, 6], :on_ident, "a", ARG ],
- # [[1, 7], :on_rparen, ")", ENDFN ],
- # [[1, 8], :on_sp, " ", BEG ],
- # [[1, 9], :on_kw, "nil", END ],
- # [[1, 12], :on_sp, " ", END ],
- # [[1, 13], :on_kw, "end", END ]]
- #
- # source://prism//lib/prism/translation/ripper.rb#72
- def lex(src, filename = T.unsafe(nil), lineno = T.unsafe(nil), raise_errors: T.unsafe(nil)); end
-
- # Parses the given Ruby program read from +src+.
- # +src+ must be a String or an IO or a object with a #gets method.
- #
- # source://prism//lib/prism/translation/ripper.rb#46
- def parse(src, filename = T.unsafe(nil), lineno = T.unsafe(nil)); end
-
- # Parses +src+ and create S-exp tree.
- # Returns more readable tree rather than Ripper.sexp_raw.
- # This method is mainly for developer use.
- # The +filename+ argument is mostly ignored.
- # By default, this method does not handle syntax errors in +src+,
- # returning +nil+ in such cases. Use the +raise_errors+ keyword
- # to raise a SyntaxError for an error in +src+.
- #
- # require "ripper"
- # require "pp"
- #
- # pp Ripper.sexp("def m(a) nil end")
- # #=> [:program,
- # [[:def,
- # [:@ident, "m", [1, 4]],
- # [:paren, [:params, [[:@ident, "a", [1, 6]]], nil, nil, nil, nil, nil, nil]],
- # [:bodystmt, [[:var_ref, [:@kw, "nil", [1, 9]]]], nil, nil, nil]]]]
- #
- # source://prism//lib/prism/translation/ripper.rb#381
- def sexp(src, filename = T.unsafe(nil), lineno = T.unsafe(nil), raise_errors: T.unsafe(nil)); end
-
- # Parses +src+ and create S-exp tree.
- # This method is mainly for developer use.
- # The +filename+ argument is mostly ignored.
- # By default, this method does not handle syntax errors in +src+,
- # returning +nil+ in such cases. Use the +raise_errors+ keyword
- # to raise a SyntaxError for an error in +src+.
- #
- # require "ripper"
- # require "pp"
- #
- # pp Ripper.sexp_raw("def m(a) nil end")
- # #=> [:program,
- # [:stmts_add,
- # [:stmts_new],
- # [:def,
- # [:@ident, "m", [1, 4]],
- # [:paren, [:params, [[:@ident, "a", [1, 6]]], nil, nil, nil]],
- # [:bodystmt,
- # [:stmts_add, [:stmts_new], [:var_ref, [:@kw, "nil", [1, 9]]]],
- # nil,
- # nil,
- # nil]]]]
- #
- # source://prism//lib/prism/translation/ripper.rb#416
- def sexp_raw(src, filename = T.unsafe(nil), lineno = T.unsafe(nil), raise_errors: T.unsafe(nil)); end
- end
-end
-
-# A list of all of the Ruby binary operators.
-#
-# source://prism//lib/prism/translation/ripper.rb#337
-Prism::Translation::Ripper::BINARY_OPERATORS = T.let(T.unsafe(nil), Array)
-
-# This array contains name of all ripper events.
-#
-# source://prism//lib/prism/translation/ripper.rb#289
-Prism::Translation::Ripper::EVENTS = T.let(T.unsafe(nil), Array)
-
-# A list of all of the Ruby keywords.
-#
-# source://prism//lib/prism/translation/ripper.rb#292
-Prism::Translation::Ripper::KEYWORDS = T.let(T.unsafe(nil), Array)
-
-# This array contains name of parser events.
-#
-# source://prism//lib/prism/translation/ripper.rb#283
-Prism::Translation::Ripper::PARSER_EVENTS = T.let(T.unsafe(nil), Array)
-
-# This contains a table of all of the parser events and their
-# corresponding arity.
-#
-# source://prism//lib/prism/translation/ripper.rb#84
-Prism::Translation::Ripper::PARSER_EVENT_TABLE = T.let(T.unsafe(nil), Hash)
-
-# This array contains name of scanner events.
-#
-# source://prism//lib/prism/translation/ripper.rb#286
-Prism::Translation::Ripper::SCANNER_EVENTS = T.let(T.unsafe(nil), Array)
-
-# This contains a table of all of the scanner events and their
-# corresponding arity.
-#
-# source://prism//lib/prism/translation/ripper.rb#227
-Prism::Translation::Ripper::SCANNER_EVENT_TABLE = T.let(T.unsafe(nil), Hash)
-
-# This class mirrors the ::Ripper::SexpBuilder subclass of ::Ripper that
-# returns the arrays of [type, *children].
-#
-# source://prism//lib/prism/translation/ripper/sexp.rb#10
-class Prism::Translation::Ripper::SexpBuilder < ::Prism::Translation::Ripper
- # :stopdoc:
- #
- # source://prism//lib/prism/translation/ripper/sexp.rb#13
- def error; end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_BEGIN(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_CHAR(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_END(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on___end__(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_alias(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_alias_error(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_aref(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_aref_field(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_arg_ambiguous(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_arg_paren(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_args_add(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_args_add_block(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_args_add_star(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_args_forward(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_args_new(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_array(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_aryptn(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_assign(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_assign_error(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_assoc_new(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_assoc_splat(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_assoclist_from_args(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_backref(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_backtick(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_bare_assoc_hash(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_begin(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_binary(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_block_var(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_blockarg(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_bodystmt(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_brace_block(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_break(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_call(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_case(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_class(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_class_name_error(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_comma(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_command(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_command_call(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_comment(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_const(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_const_path_field(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_const_path_ref(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_const_ref(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_cvar(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_def(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_defined(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_defs(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_do_block(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_dot2(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_dot3(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_dyna_symbol(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_else(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_elsif(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_embdoc(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_embdoc_beg(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_embdoc_end(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_embexpr_beg(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_embexpr_end(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_embvar(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_ensure(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_excessed_comma(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_fcall(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_field(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_float(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_fndptn(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_for(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_gvar(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_hash(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_heredoc_beg(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_heredoc_end(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_hshptn(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_ident(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_if(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_if_mod(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_ifop(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_ignored_nl(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_ignored_sp(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_imaginary(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_in(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_int(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_ivar(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_kw(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_kwrest_param(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_label(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_label_end(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_lambda(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_lbrace(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_lbracket(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_lparen(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_magic_comment(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_massign(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_method_add_arg(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_method_add_block(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_mlhs_add(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_mlhs_add_post(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_mlhs_add_star(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_mlhs_new(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_mlhs_paren(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_module(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_mrhs_add(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_mrhs_add_star(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_mrhs_new(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_mrhs_new_from_args(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_next(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_nl(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_nokw_param(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_op(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_opassign(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_operator_ambiguous(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_param_error(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_params(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_paren(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_period(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_program(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_qsymbols_add(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_qsymbols_beg(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_qsymbols_new(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_qwords_add(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_qwords_beg(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_qwords_new(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_rational(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_rbrace(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_rbracket(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_redo(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_regexp_add(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_regexp_beg(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_regexp_end(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_regexp_literal(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_regexp_new(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_rescue(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_rescue_mod(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_rest_param(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_retry(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_return(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_return0(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_rparen(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_sclass(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_semicolon(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_sp(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_stmts_add(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_stmts_new(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_string_add(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_string_concat(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_string_content(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_string_dvar(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_string_embexpr(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_string_literal(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_super(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_symbeg(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_symbol(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_symbol_literal(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_symbols_add(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_symbols_beg(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_symbols_new(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_tlambda(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_tlambeg(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_top_const_field(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_top_const_ref(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_tstring_beg(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_tstring_content(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_tstring_end(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_unary(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_undef(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_unless(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_unless_mod(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_until(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_until_mod(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_var_alias(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_var_field(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_var_ref(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_vcall(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_void_stmt(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_when(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_while(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_while_mod(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_word_add(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_word_new(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_words_add(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_words_beg(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_words_new(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#55
- def on_words_sep(tok); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_xstring_add(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_xstring_literal(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_xstring_new(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_yield(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_yield0(*args); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#47
- def on_zsuper(*args); end
-
- private
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#61
- def compile_error(mesg); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#17
- def dedent_element(e, width); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#61
- def on_error(mesg); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#24
- def on_heredoc_dedent(val, width); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#61
- def on_parse_error(mesg); end
-end
-
-# This class mirrors the ::Ripper::SexpBuilderPP subclass of ::Ripper that
-# returns the same values as ::Ripper::SexpBuilder except with a couple of
-# niceties that flatten linked lists into arrays.
-#
-# source://prism//lib/prism/translation/ripper/sexp.rb#74
-class Prism::Translation::Ripper::SexpBuilderPP < ::Prism::Translation::Ripper::SexpBuilder
- private
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#92
- def _dispatch_event_new; end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#96
- def _dispatch_event_push(list, item); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#96
- def on_args_add(list, item); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#92
- def on_args_new; end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#79
- def on_heredoc_dedent(val, width); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#96
- def on_mlhs_add(list, item); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#109
- def on_mlhs_add_post(list, post); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#105
- def on_mlhs_add_star(list, star); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#92
- def on_mlhs_new; end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#101
- def on_mlhs_paren(list); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#96
- def on_mrhs_add(list, item); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#92
- def on_mrhs_new; end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#96
- def on_qsymbols_add(list, item); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#92
- def on_qsymbols_new; end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#96
- def on_qwords_add(list, item); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#92
- def on_qwords_new; end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#96
- def on_regexp_add(list, item); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#92
- def on_regexp_new; end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#96
- def on_stmts_add(list, item); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#92
- def on_stmts_new; end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#96
- def on_string_add(list, item); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#96
- def on_symbols_add(list, item); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#92
- def on_symbols_new; end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#96
- def on_word_add(list, item); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#92
- def on_word_new; end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#96
- def on_words_add(list, item); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#92
- def on_words_new; end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#96
- def on_xstring_add(list, item); end
-
- # source://prism//lib/prism/translation/ripper/sexp.rb#92
- def on_xstring_new; end
-end
-
-# This module is the entry-point for converting a prism syntax tree into the
-# seattlerb/ruby_parser gem's syntax tree.
-#
-# source://prism//lib/prism/translation/ruby_parser.rb#14
-class Prism::Translation::RubyParser
- # Parse the given source and translate it into the seattlerb/ruby_parser
- # gem's Sexp format.
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1592
- def parse(source, filepath = T.unsafe(nil)); end
-
- # Parse the given file and translate it into the seattlerb/ruby_parser
- # gem's Sexp format.
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1598
- def parse_file(filepath); end
-
- private
-
- # Translate the given parse result and filepath into the
- # seattlerb/ruby_parser gem's Sexp format.
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1620
- def translate(result, filepath); end
-
- class << self
- # Parse the given source and translate it into the seattlerb/ruby_parser
- # gem's Sexp format.
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1605
- def parse(source, filepath = T.unsafe(nil)); end
-
- # Parse the given file and translate it into the seattlerb/ruby_parser
- # gem's Sexp format.
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1611
- def parse_file(filepath); end
- end
-end
-
-# A prism visitor that builds Sexp objects.
-#
-# source://prism//lib/prism/translation/ruby_parser.rb#16
-class Prism::Translation::RubyParser::Compiler < ::Prism::Compiler
- # Initialize a new compiler with the given file name.
- #
- # @return [Compiler] a new instance of Compiler
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#31
- def initialize(file, in_def: T.unsafe(nil), in_pattern: T.unsafe(nil)); end
-
- # This is the name of the file that we are compiling. We set it on every
- # Sexp object that is generated, and also use it to compile __FILE__
- # nodes.
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#20
- def file; end
-
- # Class variables will change their type based on if they are inside of
- # a method definition or not, so we need to track that state.
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#24
- def in_def; end
-
- # Some nodes will change their representation if they are inside of a
- # pattern, so we need to track that state.
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#28
- def in_pattern; end
-
- # alias $foo $bar
- # ^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#45
- def visit_alias_global_variable_node(node); end
-
- # alias foo bar
- # ^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#39
- def visit_alias_method_node(node); end
-
- # foo => bar | baz
- # ^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#51
- def visit_alternation_pattern_node(node); end
-
- # a and b
- # ^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#57
- def visit_and_node(node); end
-
- # foo(bar)
- # ^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#108
- def visit_arguments_node(node); end
-
- # []
- # ^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#75
- def visit_array_node(node); end
-
- # foo => [bar]
- # ^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#85
- def visit_array_pattern_node(node); end
-
- # { a: 1 }
- # ^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#114
- def visit_assoc_node(node); end
-
- # def foo(**); bar(**); end
- # ^^
- #
- # { **foo }
- # ^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#123
- def visit_assoc_splat_node(node); end
-
- # $+
- # ^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#133
- def visit_back_reference_read_node(node); end
-
- # begin end
- # ^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#139
- def visit_begin_node(node); end
-
- # foo(&bar)
- # ^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#172
- def visit_block_argument_node(node); end
-
- # foo { |; bar| }
- # ^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#180
- def visit_block_local_variable_node(node); end
-
- # A block on a keyword or method call.
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#185
- def visit_block_node(node); end
-
- # def foo(&bar); end
- # ^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#191
- def visit_block_parameter_node(node); end
-
- # A block's parameters.
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#196
- def visit_block_parameters_node(node); end
-
- # break
- # ^^^^^
- #
- # break foo
- # ^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#236
- def visit_break_node(node); end
-
- # foo.bar &&= baz
- # ^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#304
- def visit_call_and_write_node(node); end
-
- # foo
- # ^^^
- #
- # foo.bar
- # ^^^^^^^
- #
- # foo.bar() {}
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#254
- def visit_call_node(node); end
-
- # foo.bar += baz
- # ^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#294
- def visit_call_operator_write_node(node); end
-
- # foo.bar ||= baz
- # ^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#314
- def visit_call_or_write_node(node); end
-
- # foo.bar, = 1
- # ^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#337
- def visit_call_target_node(node); end
-
- # foo => bar => baz
- # ^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#343
- def visit_capture_pattern_node(node); end
-
- # case foo; in bar; end
- # ^^^^^^^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#355
- def visit_case_match_node(node); end
-
- # case foo; when bar; end
- # ^^^^^^^^^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#349
- def visit_case_node(node); end
-
- # class Foo; end
- # ^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#361
- def visit_class_node(node); end
-
- # @@foo &&= bar
- # ^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#402
- def visit_class_variable_and_write_node(node); end
-
- # @@foo += bar
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#396
- def visit_class_variable_operator_write_node(node); end
-
- # @@foo ||= bar
- # ^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#408
- def visit_class_variable_or_write_node(node); end
-
- # @@foo
- # ^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#381
- def visit_class_variable_read_node(node); end
-
- # @@foo, = bar
- # ^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#414
- def visit_class_variable_target_node(node); end
-
- # @@foo = 1
- # ^^^^^^^^^
- #
- # @@foo, @@bar = 1
- # ^^^^^ ^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#390
- def visit_class_variable_write_node(node); end
-
- # Foo &&= bar
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#447
- def visit_constant_and_write_node(node); end
-
- # Foo += bar
- # ^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#441
- def visit_constant_operator_write_node(node); end
-
- # Foo ||= bar
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#453
- def visit_constant_or_write_node(node); end
-
- # Foo::Bar &&= baz
- # ^^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#490
- def visit_constant_path_and_write_node(node); end
-
- # Foo::Bar
- # ^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#465
- def visit_constant_path_node(node); end
-
- # Foo::Bar += baz
- # ^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#484
- def visit_constant_path_operator_write_node(node); end
-
- # Foo::Bar ||= baz
- # ^^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#496
- def visit_constant_path_or_write_node(node); end
-
- # Foo::Bar, = baz
- # ^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#502
- def visit_constant_path_target_node(node); end
-
- # Foo::Bar = 1
- # ^^^^^^^^^^^^
- #
- # Foo::Foo, Bar::Bar = 1
- # ^^^^^^^^ ^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#478
- def visit_constant_path_write_node(node); end
-
- # Foo
- # ^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#426
- def visit_constant_read_node(node); end
-
- # Foo, = bar
- # ^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#459
- def visit_constant_target_node(node); end
-
- # Foo = 1
- # ^^^^^^^
- #
- # Foo, Bar = 1
- # ^^^ ^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#435
- def visit_constant_write_node(node); end
-
- # def foo; end
- # ^^^^^^^^^^^^
- #
- # def self.foo; end
- # ^^^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#518
- def visit_def_node(node); end
-
- # defined? a
- # ^^^^^^^^^^
- #
- # defined?(a)
- # ^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#549
- def visit_defined_node(node); end
-
- # if foo then bar else baz end
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#555
- def visit_else_node(node); end
-
- # "foo #{bar}"
- # ^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#561
- def visit_embedded_statements_node(node); end
-
- # "foo #@bar"
- # ^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#569
- def visit_embedded_variable_node(node); end
-
- # begin; foo; ensure; bar; end
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#575
- def visit_ensure_node(node); end
-
- # false
- # ^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#581
- def visit_false_node(node); end
-
- # foo => [*, bar, *]
- # ^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#587
- def visit_find_pattern_node(node); end
-
- # if foo .. bar; end
- # ^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#593
- def visit_flip_flop_node(node); end
-
- # 1.0
- # ^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#603
- def visit_float_node(node); end
-
- # for foo in bar do end
- # ^^^^^^^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#609
- def visit_for_node(node); end
-
- # def foo(...); bar(...); end
- # ^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#615
- def visit_forwarding_arguments_node(node); end
-
- # def foo(...); end
- # ^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#621
- def visit_forwarding_parameter_node(node); end
-
- # super
- # ^^^^^
- #
- # super {}
- # ^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#630
- def visit_forwarding_super_node(node); end
-
- # $foo &&= bar
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#657
- def visit_global_variable_and_write_node(node); end
-
- # $foo += bar
- # ^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#651
- def visit_global_variable_operator_write_node(node); end
-
- # $foo ||= bar
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#663
- def visit_global_variable_or_write_node(node); end
-
- # $foo
- # ^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#636
- def visit_global_variable_read_node(node); end
-
- # $foo, = bar
- # ^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#669
- def visit_global_variable_target_node(node); end
-
- # $foo = 1
- # ^^^^^^^^
- #
- # $foo, $bar = 1
- # ^^^^ ^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#645
- def visit_global_variable_write_node(node); end
-
- # {}
- # ^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#675
- def visit_hash_node(node); end
-
- # foo => {}
- # ^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#681
- def visit_hash_pattern_node(node); end
-
- # if foo then bar end
- # ^^^^^^^^^^^^^^^^^^^
- #
- # bar if foo
- # ^^^^^^^^^^
- #
- # foo ? bar : baz
- # ^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#702
- def visit_if_node(node); end
-
- # 1i
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#707
- def visit_imaginary_node(node); end
-
- # { foo: }
- # ^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#713
- def visit_implicit_node(node); end
-
- # foo { |bar,| }
- # ^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#718
- def visit_implicit_rest_node(node); end
-
- # case foo; in bar; end
- # ^^^^^^^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#723
- def visit_in_node(node); end
-
- # foo[bar] &&= baz
- # ^^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#749
- def visit_index_and_write_node(node); end
-
- # foo[bar] += baz
- # ^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#736
- def visit_index_operator_write_node(node); end
-
- # foo[bar] ||= baz
- # ^^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#762
- def visit_index_or_write_node(node); end
-
- # foo[bar], = 1
- # ^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#775
- def visit_index_target_node(node); end
-
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#805
- def visit_instance_variable_and_write_node(node); end
-
- # ^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#799
- def visit_instance_variable_operator_write_node(node); end
-
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#811
- def visit_instance_variable_or_write_node(node); end
-
- # ^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#784
- def visit_instance_variable_read_node(node); end
-
- # @foo, = bar
- # ^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#817
- def visit_instance_variable_target_node(node); end
-
- # ^^^^^^^^
- #
- # @foo, @bar = 1
- # ^^^^ ^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#793
- def visit_instance_variable_write_node(node); end
-
- # 1
- # ^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#823
- def visit_integer_node(node); end
-
- # if /foo #{bar}/ then end
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#829
- def visit_interpolated_match_last_line_node(node); end
-
- # /foo #{bar}/
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#846
- def visit_interpolated_regular_expression_node(node); end
-
- # "foo #{bar}"
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#861
- def visit_interpolated_string_node(node); end
-
- # :"foo #{bar}"
- # ^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#868
- def visit_interpolated_symbol_node(node); end
-
- # `foo #{bar}`
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#875
- def visit_interpolated_x_string_node(node); end
-
- # -> { it }
- # ^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#947
- def visit_it_local_variable_read_node(node); end
-
- # foo(bar: baz)
- # ^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#953
- def visit_keyword_hash_node(node); end
-
- # def foo(**bar); end
- # ^^^^^
- #
- # def foo(**); end
- # ^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#962
- def visit_keyword_rest_parameter_node(node); end
-
- # -> {}
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#967
- def visit_lambda_node(node); end
-
- # foo &&= bar
- # ^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1010
- def visit_local_variable_and_write_node(node); end
-
- # foo += bar
- # ^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1004
- def visit_local_variable_operator_write_node(node); end
-
- # foo ||= bar
- # ^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1016
- def visit_local_variable_or_write_node(node); end
-
- # foo
- # ^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#985
- def visit_local_variable_read_node(node); end
-
- # foo, = bar
- # ^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1022
- def visit_local_variable_target_node(node); end
-
- # foo = 1
- # ^^^^^^^
- #
- # foo, bar = 1
- # ^^^ ^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#998
- def visit_local_variable_write_node(node); end
-
- # if /foo/ then end
- # ^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1028
- def visit_match_last_line_node(node); end
-
- # foo in bar
- # ^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1034
- def visit_match_predicate_node(node); end
-
- # foo => bar
- # ^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1040
- def visit_match_required_node(node); end
-
- # /(?<foo>foo)/ =~ bar
- # ^^^^^^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1046
- def visit_match_write_node(node); end
-
- # A node that is missing from the syntax tree. This is only used in the
- # case of a syntax error. The parser gem doesn't have such a concept, so
- # we invent our own here.
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1053
- def visit_missing_node(node); end
-
- # module Foo; end
- # ^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1059
- def visit_module_node(node); end
-
- # foo, bar = baz
- # ^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1079
- def visit_multi_target_node(node); end
-
- # foo, bar = baz
- # ^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1089
- def visit_multi_write_node(node); end
-
- # next
- # ^^^^
- #
- # next foo
- # ^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1113
- def visit_next_node(node); end
-
- # nil
- # ^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1126
- def visit_nil_node(node); end
-
- # def foo(**nil); end
- # ^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1132
- def visit_no_keywords_parameter_node(node); end
-
- # -> { _1 + _2 }
- # ^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1138
- def visit_numbered_parameters_node(node); end
-
- # $1
- # ^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1144
- def visit_numbered_reference_read_node(node); end
-
- # def foo(bar: baz); end
- # ^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1150
- def visit_optional_keyword_parameter_node(node); end
-
- # def foo(bar = 1); end
- # ^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1156
- def visit_optional_parameter_node(node); end
-
- # a or b
- # ^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1162
- def visit_or_node(node); end
-
- # def foo(bar, *baz); end
- # ^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1180
- def visit_parameters_node(node); end
-
- # ()
- # ^^
- #
- # (1)
- # ^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1218
- def visit_parentheses_node(node); end
-
- # foo => ^(bar)
- # ^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1228
- def visit_pinned_expression_node(node); end
-
- # foo = 1 and bar => ^foo
- # ^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1234
- def visit_pinned_variable_node(node); end
-
- # END {}
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1243
- def visit_post_execution_node(node); end
-
- # BEGIN {}
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1248
- def visit_pre_execution_node(node); end
-
- # The top-level program node.
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1253
- def visit_program_node(node); end
-
- # 0..5
- # ^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1259
- def visit_range_node(node); end
-
- # 1r
- # ^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1281
- def visit_rational_node(node); end
-
- # redo
- # ^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1287
- def visit_redo_node(node); end
-
- # /foo/
- # ^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1293
- def visit_regular_expression_node(node); end
-
- # def foo(bar:); end
- # ^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1299
- def visit_required_keyword_parameter_node(node); end
-
- # def foo(bar); end
- # ^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1305
- def visit_required_parameter_node(node); end
-
- # foo rescue bar
- # ^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1311
- def visit_rescue_modifier_node(node); end
-
- # begin; rescue; end
- # ^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1317
- def visit_rescue_node(node); end
-
- # def foo(*bar); end
- # ^^^^
- #
- # def foo(*); end
- # ^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1337
- def visit_rest_parameter_node(node); end
-
- # retry
- # ^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1343
- def visit_retry_node(node); end
-
- # return
- # ^^^^^^
- #
- # return 1
- # ^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1352
- def visit_return_node(node); end
-
- # self
- # ^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1365
- def visit_self_node(node); end
-
- # A shareable constant.
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1370
- def visit_shareable_constant_node(node); end
-
- # class << self; end
- # ^^^^^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1376
- def visit_singleton_class_node(node); end
-
- # __ENCODING__
- # ^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1384
- def visit_source_encoding_node(node); end
-
- # __FILE__
- # ^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1391
- def visit_source_file_node(node); end
-
- # __LINE__
- # ^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1397
- def visit_source_line_node(node); end
-
- # foo(*bar)
- # ^^^^
- #
- # def foo((bar, *baz)); end
- # ^^^^
- #
- # def foo(*); bar(*); end
- # ^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1409
- def visit_splat_node(node); end
-
- # A list of statements.
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1418
- def visit_statements_node(node); end
-
- # "foo"
- # ^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1430
- def visit_string_node(node); end
-
- # super(foo)
- # ^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1436
- def visit_super_node(node); end
-
- # :foo
- # ^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1450
- def visit_symbol_node(node); end
-
- # true
- # ^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1456
- def visit_true_node(node); end
-
- # undef foo
- # ^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1462
- def visit_undef_node(node); end
-
- # unless foo; bar end
- # ^^^^^^^^^^^^^^^^^^^
- #
- # bar unless foo
- # ^^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1472
- def visit_unless_node(node); end
-
- # until foo; bar end
- # ^^^^^^^^^^^^^^^^^
- #
- # bar until foo
- # ^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1481
- def visit_until_node(node); end
-
- # case foo; when bar; end
- # ^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1487
- def visit_when_node(node); end
-
- # while foo; bar end
- # ^^^^^^^^^^^^^^^^^^
- #
- # bar while foo
- # ^^^^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1496
- def visit_while_node(node); end
-
- # `foo`
- # ^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1502
- def visit_x_string_node(node); end
-
- # yield
- # ^^^^^
- #
- # yield 1
- # ^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1518
- def visit_yield_node(node); end
-
- private
-
- # If a class variable is written within a method definition, it has a
- # different type than everywhere else.
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#420
- def class_variable_write_type; end
-
- # Create a new compiler with the given options.
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1525
- def copy_compiler(in_def: T.unsafe(nil), in_pattern: T.unsafe(nil)); end
-
- # Call nodes with operators following them will either be op_asgn or
- # op_asgn2 nodes. That is determined by their call operator and their
- # right-hand side.
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#325
- def op_asgn?(node); end
-
- # Call nodes with operators following them can use &. as an operator,
- # which changes their type by prefixing "safe_".
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#331
- def op_asgn_type(node, type); end
-
- # Create a new Sexp object from the given prism node and arguments.
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1530
- def s(node, *arguments); end
-
- # Visit a block node, which will modify the AST by wrapping the given
- # visited node in an iter node.
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1540
- def visit_block(node, sexp, block); end
-
- # def foo((bar, baz)); end
- # ^^^^^^^^^^
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1195
- def visit_destructured_parameter(node); end
-
- # Visit the interpolated content of the string-like node.
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#882
- def visit_interpolated_parts(parts); end
-
- # Pattern constants get wrapped in another layer of :const.
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1561
- def visit_pattern_constant(node); end
-
- # If the bounds of a range node are empty parentheses, then they do not
- # get replaced by their usual s(:nil), but instead are s(:begin).
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1271
- def visit_range_bounds_node(node); end
-
- # Visit the value of a write, which will be on the right-hand side of
- # a write operator. Because implicit arrays can have splats, those could
- # potentially be wrapped in an svalue node.
- #
- # source://prism//lib/prism/translation/ruby_parser.rb#1575
- def visit_write_value(node); end
-end
-
-# Represents the use of the literal `true` keyword.
-#
-# true
-# ^^^^
-#
-# source://prism//lib/prism/node.rb#15704
-class Prism::TrueNode < ::Prism::Node
- # Initialize a new TrueNode node.
- #
- # @return [TrueNode] a new instance of TrueNode
- #
- # source://prism//lib/prism/node.rb#15706
- def initialize(source, node_id, location, flags); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#15763
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#15714
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#15719
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#15729
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#15724
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer) -> TrueNode
- #
- # source://prism//lib/prism/node.rb#15734
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#15719
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location }
- #
- # source://prism//lib/prism/node.rb#15742
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#15747
- sig { override.returns(String) }
- def inspect; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#15752
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#15757
- def type; end
- end
-end
-
-# Represents the use of the `undef` keyword.
-#
-# undef :foo, :bar, :baz
-# ^^^^^^^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#15772
-class Prism::UndefNode < ::Prism::Node
- # Initialize a new UndefNode node.
- #
- # @return [UndefNode] a new instance of UndefNode
- #
- # source://prism//lib/prism/node.rb#15774
- def initialize(source, node_id, location, flags, names, keyword_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#15848
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#15784
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#15789
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#15799
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#15794
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?names: Array[SymbolNode | InterpolatedSymbolNode], ?keyword_loc: Location) -> UndefNode
- #
- # source://prism//lib/prism/node.rb#15804
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), names: T.unsafe(nil), keyword_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#15789
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, names: Array[SymbolNode | InterpolatedSymbolNode], keyword_loc: Location }
- #
- # source://prism//lib/prism/node.rb#15812
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#15832
- sig { override.returns(String) }
- def inspect; end
-
- # def keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#15827
- def keyword; end
-
- # attr_reader keyword_loc: Location
- #
- # source://prism//lib/prism/node.rb#15820
- def keyword_loc; end
-
- # attr_reader names: Array[SymbolNode | InterpolatedSymbolNode]
- #
- # source://prism//lib/prism/node.rb#15817
- def names; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#15837
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#15842
- def type; end
- end
-end
-
-# Represents the use of the `unless` keyword, either in the block form or the modifier form.
-#
-# bar unless foo
-# ^^^^^^^^^^^^^^
-#
-# unless foo then bar end
-# ^^^^^^^^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#15863
-class Prism::UnlessNode < ::Prism::Node
- # Initialize a new UnlessNode node.
- #
- # @return [UnlessNode] a new instance of UnlessNode
- #
- # source://prism//lib/prism/node.rb#15865
- def initialize(source, node_id, location, flags, keyword_loc, predicate, then_keyword_loc, statements, else_clause, end_keyword_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#16014
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#15879
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#15884
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#15898
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#15889
- def compact_child_nodes; end
-
- # Returns the else clause of the unless node. This method is deprecated in
- # favor of #else_clause.
- #
- # source://prism//lib/prism/node_ext.rb#503
- def consequent; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?keyword_loc: Location, ?predicate: Prism::node, ?then_keyword_loc: Location?, ?statements: StatementsNode?, ?else_clause: ElseNode?, ?end_keyword_loc: Location?) -> UnlessNode
- #
- # source://prism//lib/prism/node.rb#15903
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), keyword_loc: T.unsafe(nil), predicate: T.unsafe(nil), then_keyword_loc: T.unsafe(nil), statements: T.unsafe(nil), else_clause: T.unsafe(nil), end_keyword_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#15884
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, keyword_loc: Location, predicate: Prism::node, then_keyword_loc: Location?, statements: StatementsNode?, else_clause: ElseNode?, end_keyword_loc: Location? }
- #
- # source://prism//lib/prism/node.rb#15911
- def deconstruct_keys(keys); end
-
- # The else clause of the unless expression, if present.
- #
- # unless cond then bar else baz end
- # ^^^^^^^^
- #
- # source://prism//lib/prism/node.rb#15964
- def else_clause; end
-
- # def end_keyword: () -> String?
- #
- # source://prism//lib/prism/node.rb#15993
- def end_keyword; end
-
- # The location of the `end` keyword, if present.
- #
- # unless cond then bar end
- # ^^^
- #
- # source://prism//lib/prism/node.rb#15970
- def end_keyword_loc; end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#15998
- sig { override.returns(String) }
- def inspect; end
-
- # def keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#15983
- def keyword; end
-
- # The location of the `unless` keyword.
- #
- # unless cond then bar end
- # ^^^^^^
- #
- # bar unless cond
- # ^^^^^^
- #
- # source://prism//lib/prism/node.rb#15922
- def keyword_loc; end
-
- # source://prism//lib/prism/parse_result/newlines.rb#97
- def newline_flag!(lines); end
-
- # The condition to be evaluated for the unless expression. It can be any [non-void expression](https://github.com/ruby/prism/blob/main/docs/parsing_rules.md#non-void-expression).
- #
- # unless cond then bar end
- # ^^^^
- #
- # bar unless cond
- # ^^^^
- #
- # source://prism//lib/prism/node.rb#15935
- def predicate; end
-
- # The body of statements that will executed if the unless condition is
- # falsey. Will be `nil` if no body is provided.
- #
- # unless cond then bar end
- # ^^^
- #
- # source://prism//lib/prism/node.rb#15958
- def statements; end
-
- # def then_keyword: () -> String?
- #
- # source://prism//lib/prism/node.rb#15988
- def then_keyword; end
-
- # The location of the `then` keyword, if present.
- #
- # unless cond then bar end
- # ^^^^
- #
- # source://prism//lib/prism/node.rb#15941
- def then_keyword_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#16003
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#16008
- def type; end
- end
-end
-
-# Represents the use of the `until` keyword, either in the block form or the modifier form.
-#
-# bar until foo
-# ^^^^^^^^^^^^^
-#
-# until foo do bar end
-# ^^^^^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#16032
-class Prism::UntilNode < ::Prism::Node
- # Initialize a new UntilNode node.
- #
- # @return [UntilNode] a new instance of UntilNode
- #
- # source://prism//lib/prism/node.rb#16034
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- keyword_loc: Prism::Location,
- closing_loc: T.nilable(Prism::Location),
- predicate: Prism::Node,
- statements: T.nilable(Prism::StatementsNode)
- ).void
- end
- def initialize(source, node_id, location, flags, keyword_loc, closing_loc, predicate, statements); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#16139
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#16046
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def begin_modifier?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#16082
- sig { returns(T::Boolean) }
- def begin_modifier?; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#16051
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def closing: () -> String?
- #
- # source://prism//lib/prism/node.rb#16118
- sig { returns(T.nilable(String)) }
- def closing; end
-
- # attr_reader closing_loc: Location?
- #
- # source://prism//lib/prism/node.rb#16094
- sig { returns(T.nilable(Prism::Location)) }
- def closing_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#16064
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#16056
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?keyword_loc: Location, ?closing_loc: Location?, ?predicate: Prism::node, ?statements: StatementsNode?) -> UntilNode
- #
- # source://prism//lib/prism/node.rb#16069
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- keyword_loc: Prism::Location,
- closing_loc: T.nilable(Prism::Location),
- predicate: Prism::Node,
- statements: T.nilable(Prism::StatementsNode)
- ).returns(Prism::UntilNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), keyword_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), predicate: T.unsafe(nil), statements: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#16051
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, keyword_loc: Location, closing_loc: Location?, predicate: Prism::node, statements: StatementsNode? }
- #
- # source://prism//lib/prism/node.rb#16077
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#16123
- sig { override.returns(String) }
- def inspect; end
-
- # def keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#16113
- sig { returns(String) }
- def keyword; end
-
- # attr_reader keyword_loc: Location
- #
- # source://prism//lib/prism/node.rb#16087
- sig { returns(Prism::Location) }
- def keyword_loc; end
-
- # source://prism//lib/prism/parse_result/newlines.rb#103
- def newline_flag!(lines); end
-
- # attr_reader predicate: Prism::node
- #
- # source://prism//lib/prism/node.rb#16107
- sig { returns(Prism::Node) }
- def predicate; end
-
- # attr_reader statements: StatementsNode?
- #
- # source://prism//lib/prism/node.rb#16110
- sig { returns(T.nilable(Prism::StatementsNode)) }
- def statements; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#16128
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#16133
- def type; end
- end
-end
-
-# The version constant is set by reading the result of calling pm_version.
-Prism::VERSION = T.let(T.unsafe(nil), String)
-
-# A visitor is a class that provides a default implementation for every accept
-# method defined on the nodes. This means it can walk a tree without the
-# caller needing to define any special handling. This allows you to handle a
-# subset of the tree, while still walking the whole tree.
-#
-# For example, to find all of the method calls that call the `foo` method, you
-# could write:
-#
-# class FooCalls < Prism::Visitor
-# def visit_call_node(node)
-# if node.name == "foo"
-# # Do something with the node
-# end
-#
-# # Call super so that the visitor continues walking the tree
-# super
-# end
-# end
-#
-# source://prism//lib/prism/visitor.rb#54
-class Prism::Visitor < ::Prism::BasicVisitor
- # Visit a AliasGlobalVariableNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::AliasGlobalVariableNode).void }
- def visit_alias_global_variable_node(node); end
-
- # Visit a AliasMethodNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::AliasMethodNode).void }
- def visit_alias_method_node(node); end
-
- # Visit a AlternationPatternNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::AlternationPatternNode).void }
- def visit_alternation_pattern_node(node); end
-
- # Visit a AndNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::AndNode).void }
- def visit_and_node(node); end
-
- # Visit a ArgumentsNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ArgumentsNode).void }
- def visit_arguments_node(node); end
-
- # Visit a ArrayNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ArrayNode).void }
- def visit_array_node(node); end
-
- # Visit a ArrayPatternNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ArrayPatternNode).void }
- def visit_array_pattern_node(node); end
-
- # Visit a AssocNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::AssocNode).void }
- def visit_assoc_node(node); end
-
- # Visit a AssocSplatNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::AssocSplatNode).void }
- def visit_assoc_splat_node(node); end
-
- # Visit a BackReferenceReadNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::BackReferenceReadNode).void }
- def visit_back_reference_read_node(node); end
-
- # Visit a BeginNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::BeginNode).void }
- def visit_begin_node(node); end
-
- # Visit a BlockArgumentNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::BlockArgumentNode).void }
- def visit_block_argument_node(node); end
-
- # Visit a BlockLocalVariableNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::BlockLocalVariableNode).void }
- def visit_block_local_variable_node(node); end
-
- # Visit a BlockNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::BlockNode).void }
- def visit_block_node(node); end
-
- # Visit a BlockParameterNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::BlockParameterNode).void }
- def visit_block_parameter_node(node); end
-
- # Visit a BlockParametersNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::BlockParametersNode).void }
- def visit_block_parameters_node(node); end
-
- # Visit a BreakNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::BreakNode).void }
- def visit_break_node(node); end
-
- # Visit a CallAndWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::CallAndWriteNode).void }
- def visit_call_and_write_node(node); end
-
- # Visit a CallNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::CallNode).void }
- def visit_call_node(node); end
-
- # Visit a CallOperatorWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::CallOperatorWriteNode).void }
- def visit_call_operator_write_node(node); end
-
- # Visit a CallOrWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::CallOrWriteNode).void }
- def visit_call_or_write_node(node); end
-
- # Visit a CallTargetNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::CallTargetNode).void }
- def visit_call_target_node(node); end
-
- # Visit a CapturePatternNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::CapturePatternNode).void }
- def visit_capture_pattern_node(node); end
-
- # Visit a CaseMatchNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::CaseMatchNode).void }
- def visit_case_match_node(node); end
-
- # Visit a CaseNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::CaseNode).void }
- def visit_case_node(node); end
-
- # Visit a ClassNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ClassNode).void }
- def visit_class_node(node); end
-
- # Visit a ClassVariableAndWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ClassVariableAndWriteNode).void }
- def visit_class_variable_and_write_node(node); end
-
- # Visit a ClassVariableOperatorWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ClassVariableOperatorWriteNode).void }
- def visit_class_variable_operator_write_node(node); end
-
- # Visit a ClassVariableOrWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ClassVariableOrWriteNode).void }
- def visit_class_variable_or_write_node(node); end
-
- # Visit a ClassVariableReadNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ClassVariableReadNode).void }
- def visit_class_variable_read_node(node); end
-
- # Visit a ClassVariableTargetNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ClassVariableTargetNode).void }
- def visit_class_variable_target_node(node); end
-
- # Visit a ClassVariableWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ClassVariableWriteNode).void }
- def visit_class_variable_write_node(node); end
-
- # Visit a ConstantAndWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ConstantAndWriteNode).void }
- def visit_constant_and_write_node(node); end
-
- # Visit a ConstantOperatorWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ConstantOperatorWriteNode).void }
- def visit_constant_operator_write_node(node); end
-
- # Visit a ConstantOrWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ConstantOrWriteNode).void }
- def visit_constant_or_write_node(node); end
-
- # Visit a ConstantPathAndWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ConstantPathAndWriteNode).void }
- def visit_constant_path_and_write_node(node); end
-
- # Visit a ConstantPathNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ConstantPathNode).void }
- def visit_constant_path_node(node); end
-
- # Visit a ConstantPathOperatorWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ConstantPathOperatorWriteNode).void }
- def visit_constant_path_operator_write_node(node); end
-
- # Visit a ConstantPathOrWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ConstantPathOrWriteNode).void }
- def visit_constant_path_or_write_node(node); end
-
- # Visit a ConstantPathTargetNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ConstantPathTargetNode).void }
- def visit_constant_path_target_node(node); end
-
- # Visit a ConstantPathWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ConstantPathWriteNode).void }
- def visit_constant_path_write_node(node); end
-
- # Visit a ConstantReadNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ConstantReadNode).void }
- def visit_constant_read_node(node); end
-
- # Visit a ConstantTargetNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ConstantTargetNode).void }
- def visit_constant_target_node(node); end
-
- # Visit a ConstantWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ConstantWriteNode).void }
- def visit_constant_write_node(node); end
-
- # Visit a DefNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::DefNode).void }
- def visit_def_node(node); end
-
- # Visit a DefinedNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::DefinedNode).void }
- def visit_defined_node(node); end
-
- # Visit a ElseNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ElseNode).void }
- def visit_else_node(node); end
-
- # Visit a EmbeddedStatementsNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::EmbeddedStatementsNode).void }
- def visit_embedded_statements_node(node); end
-
- # Visit a EmbeddedVariableNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::EmbeddedVariableNode).void }
- def visit_embedded_variable_node(node); end
-
- # Visit a EnsureNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::EnsureNode).void }
- def visit_ensure_node(node); end
-
- # Visit a FalseNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::FalseNode).void }
- def visit_false_node(node); end
-
- # Visit a FindPatternNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::FindPatternNode).void }
- def visit_find_pattern_node(node); end
-
- # Visit a FlipFlopNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::FlipFlopNode).void }
- def visit_flip_flop_node(node); end
-
- # Visit a FloatNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::FloatNode).void }
- def visit_float_node(node); end
-
- # Visit a ForNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ForNode).void }
- def visit_for_node(node); end
-
- # Visit a ForwardingArgumentsNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ForwardingArgumentsNode).void }
- def visit_forwarding_arguments_node(node); end
-
- # Visit a ForwardingParameterNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ForwardingParameterNode).void }
- def visit_forwarding_parameter_node(node); end
-
- # Visit a ForwardingSuperNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ForwardingSuperNode).void }
- def visit_forwarding_super_node(node); end
-
- # Visit a GlobalVariableAndWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::GlobalVariableAndWriteNode).void }
- def visit_global_variable_and_write_node(node); end
-
- # Visit a GlobalVariableOperatorWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::GlobalVariableOperatorWriteNode).void }
- def visit_global_variable_operator_write_node(node); end
-
- # Visit a GlobalVariableOrWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::GlobalVariableOrWriteNode).void }
- def visit_global_variable_or_write_node(node); end
-
- # Visit a GlobalVariableReadNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::GlobalVariableReadNode).void }
- def visit_global_variable_read_node(node); end
-
- # Visit a GlobalVariableTargetNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::GlobalVariableTargetNode).void }
- def visit_global_variable_target_node(node); end
-
- # Visit a GlobalVariableWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::GlobalVariableWriteNode).void }
- def visit_global_variable_write_node(node); end
-
- # Visit a HashNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::HashNode).void }
- def visit_hash_node(node); end
-
- # Visit a HashPatternNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::HashPatternNode).void }
- def visit_hash_pattern_node(node); end
-
- # Visit a IfNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::IfNode).void }
- def visit_if_node(node); end
-
- # Visit a ImaginaryNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ImaginaryNode).void }
- def visit_imaginary_node(node); end
-
- # Visit a ImplicitNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ImplicitNode).void }
- def visit_implicit_node(node); end
-
- # Visit a ImplicitRestNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ImplicitRestNode).void }
- def visit_implicit_rest_node(node); end
-
- # Visit a InNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::InNode).void }
- def visit_in_node(node); end
-
- # Visit a IndexAndWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::IndexAndWriteNode).void }
- def visit_index_and_write_node(node); end
-
- # Visit a IndexOperatorWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::IndexOperatorWriteNode).void }
- def visit_index_operator_write_node(node); end
-
- # Visit a IndexOrWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::IndexOrWriteNode).void }
- def visit_index_or_write_node(node); end
-
- # Visit a IndexTargetNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::IndexTargetNode).void }
- def visit_index_target_node(node); end
-
- # Visit a InstanceVariableAndWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::InstanceVariableAndWriteNode).void }
- def visit_instance_variable_and_write_node(node); end
-
- # Visit a InstanceVariableOperatorWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::InstanceVariableOperatorWriteNode).void }
- def visit_instance_variable_operator_write_node(node); end
-
- # Visit a InstanceVariableOrWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::InstanceVariableOrWriteNode).void }
- def visit_instance_variable_or_write_node(node); end
-
- # Visit a InstanceVariableReadNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::InstanceVariableReadNode).void }
- def visit_instance_variable_read_node(node); end
-
- # Visit a InstanceVariableTargetNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::InstanceVariableTargetNode).void }
- def visit_instance_variable_target_node(node); end
-
- # Visit a InstanceVariableWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::InstanceVariableWriteNode).void }
- def visit_instance_variable_write_node(node); end
-
- # Visit a IntegerNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::IntegerNode).void }
- def visit_integer_node(node); end
-
- # Visit a InterpolatedMatchLastLineNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::InterpolatedMatchLastLineNode).void }
- def visit_interpolated_match_last_line_node(node); end
-
- # Visit a InterpolatedRegularExpressionNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::InterpolatedRegularExpressionNode).void }
- def visit_interpolated_regular_expression_node(node); end
-
- # Visit a InterpolatedStringNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::InterpolatedStringNode).void }
- def visit_interpolated_string_node(node); end
-
- # Visit a InterpolatedSymbolNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::InterpolatedSymbolNode).void }
- def visit_interpolated_symbol_node(node); end
-
- # Visit a InterpolatedXStringNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::InterpolatedXStringNode).void }
- def visit_interpolated_x_string_node(node); end
-
- # Visit a ItLocalVariableReadNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ItLocalVariableReadNode).void }
- def visit_it_local_variable_read_node(node); end
-
- # Visit a ItParametersNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ItParametersNode).void }
- def visit_it_parameters_node(node); end
-
- # Visit a KeywordHashNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::KeywordHashNode).void }
- def visit_keyword_hash_node(node); end
-
- # Visit a KeywordRestParameterNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::KeywordRestParameterNode).void }
- def visit_keyword_rest_parameter_node(node); end
-
- # Visit a LambdaNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::LambdaNode).void }
- def visit_lambda_node(node); end
-
- # Visit a LocalVariableAndWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::LocalVariableAndWriteNode).void }
- def visit_local_variable_and_write_node(node); end
-
- # Visit a LocalVariableOperatorWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::LocalVariableOperatorWriteNode).void }
- def visit_local_variable_operator_write_node(node); end
-
- # Visit a LocalVariableOrWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::LocalVariableOrWriteNode).void }
- def visit_local_variable_or_write_node(node); end
-
- # Visit a LocalVariableReadNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::LocalVariableReadNode).void }
- def visit_local_variable_read_node(node); end
-
- # Visit a LocalVariableTargetNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::LocalVariableTargetNode).void }
- def visit_local_variable_target_node(node); end
-
- # Visit a LocalVariableWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::LocalVariableWriteNode).void }
- def visit_local_variable_write_node(node); end
-
- # Visit a MatchLastLineNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::MatchLastLineNode).void }
- def visit_match_last_line_node(node); end
-
- # Visit a MatchPredicateNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::MatchPredicateNode).void }
- def visit_match_predicate_node(node); end
-
- # Visit a MatchRequiredNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::MatchRequiredNode).void }
- def visit_match_required_node(node); end
-
- # Visit a MatchWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::MatchWriteNode).void }
- def visit_match_write_node(node); end
-
- # Visit a MissingNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::MissingNode).void }
- def visit_missing_node(node); end
-
- # Visit a ModuleNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ModuleNode).void }
- def visit_module_node(node); end
-
- # Visit a MultiTargetNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::MultiTargetNode).void }
- def visit_multi_target_node(node); end
-
- # Visit a MultiWriteNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::MultiWriteNode).void }
- def visit_multi_write_node(node); end
-
- # Visit a NextNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::NextNode).void }
- def visit_next_node(node); end
-
- # Visit a NilNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::NilNode).void }
- def visit_nil_node(node); end
-
- # Visit a NoKeywordsParameterNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::NoKeywordsParameterNode).void }
- def visit_no_keywords_parameter_node(node); end
-
- # Visit a NumberedParametersNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::NumberedParametersNode).void }
- def visit_numbered_parameters_node(node); end
-
- # Visit a NumberedReferenceReadNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::NumberedReferenceReadNode).void }
- def visit_numbered_reference_read_node(node); end
-
- # Visit a OptionalKeywordParameterNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::OptionalKeywordParameterNode).void }
- def visit_optional_keyword_parameter_node(node); end
-
- # Visit a OptionalParameterNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::OptionalParameterNode).void }
- def visit_optional_parameter_node(node); end
-
- # Visit a OrNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::OrNode).void }
- def visit_or_node(node); end
-
- # Visit a ParametersNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ParametersNode).void }
- def visit_parameters_node(node); end
-
- # Visit a ParenthesesNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ParenthesesNode).void }
- def visit_parentheses_node(node); end
-
- # Visit a PinnedExpressionNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::PinnedExpressionNode).void }
- def visit_pinned_expression_node(node); end
-
- # Visit a PinnedVariableNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::PinnedVariableNode).void }
- def visit_pinned_variable_node(node); end
-
- # Visit a PostExecutionNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::PostExecutionNode).void }
- def visit_post_execution_node(node); end
-
- # Visit a PreExecutionNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::PreExecutionNode).void }
- def visit_pre_execution_node(node); end
-
- # Visit a ProgramNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ProgramNode).void }
- def visit_program_node(node); end
-
- # Visit a RangeNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::RangeNode).void }
- def visit_range_node(node); end
-
- # Visit a RationalNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::RationalNode).void }
- def visit_rational_node(node); end
-
- # Visit a RedoNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::RedoNode).void }
- def visit_redo_node(node); end
-
- # Visit a RegularExpressionNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::RegularExpressionNode).void }
- def visit_regular_expression_node(node); end
-
- # Visit a RequiredKeywordParameterNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::RequiredKeywordParameterNode).void }
- def visit_required_keyword_parameter_node(node); end
-
- # Visit a RequiredParameterNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::RequiredParameterNode).void }
- def visit_required_parameter_node(node); end
-
- # Visit a RescueModifierNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::RescueModifierNode).void }
- def visit_rescue_modifier_node(node); end
-
- # Visit a RescueNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::RescueNode).void }
- def visit_rescue_node(node); end
-
- # Visit a RestParameterNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::RestParameterNode).void }
- def visit_rest_parameter_node(node); end
-
- # Visit a RetryNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::RetryNode).void }
- def visit_retry_node(node); end
-
- # Visit a ReturnNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ReturnNode).void }
- def visit_return_node(node); end
-
- # Visit a SelfNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::SelfNode).void }
- def visit_self_node(node); end
-
- # Visit a ShareableConstantNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::ShareableConstantNode).void }
- def visit_shareable_constant_node(node); end
-
- # Visit a SingletonClassNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::SingletonClassNode).void }
- def visit_singleton_class_node(node); end
-
- # Visit a SourceEncodingNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::SourceEncodingNode).void }
- def visit_source_encoding_node(node); end
-
- # Visit a SourceFileNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::SourceFileNode).void }
- def visit_source_file_node(node); end
-
- # Visit a SourceLineNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::SourceLineNode).void }
- def visit_source_line_node(node); end
-
- # Visit a SplatNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::SplatNode).void }
- def visit_splat_node(node); end
-
- # Visit a StatementsNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::StatementsNode).void }
- def visit_statements_node(node); end
-
- # Visit a StringNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::StringNode).void }
- def visit_string_node(node); end
-
- # Visit a SuperNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::SuperNode).void }
- def visit_super_node(node); end
-
- # Visit a SymbolNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::SymbolNode).void }
- def visit_symbol_node(node); end
-
- # Visit a TrueNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::TrueNode).void }
- def visit_true_node(node); end
-
- # Visit a UndefNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::UndefNode).void }
- def visit_undef_node(node); end
-
- # Visit a UnlessNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::UnlessNode).void }
- def visit_unless_node(node); end
-
- # Visit a UntilNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::UntilNode).void }
- def visit_until_node(node); end
-
- # Visit a WhenNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::WhenNode).void }
- def visit_when_node(node); end
-
- # Visit a WhileNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::WhileNode).void }
- def visit_while_node(node); end
-
- # Visit a XStringNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::XStringNode).void }
- def visit_x_string_node(node); end
-
- # Visit a YieldNode node
- #
- # source://prism//lib/prism/visitor.rb#29
- sig { params(node: Prism::YieldNode).void }
- def visit_yield_node(node); end
-end
-
-# Represents the use of the `when` keyword within a case statement.
-#
-# case true
-# when true
-# ^^^^^^^^^
-# end
-#
-# source://prism//lib/prism/node.rb#16155
-class Prism::WhenNode < ::Prism::Node
- # Initialize a new WhenNode node.
- #
- # @return [WhenNode] a new instance of WhenNode
- #
- # source://prism//lib/prism/node.rb#16157
- def initialize(source, node_id, location, flags, keyword_loc, conditions, then_keyword_loc, statements); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#16257
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#16169
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#16174
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#16187
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#16179
- def compact_child_nodes; end
-
- # attr_reader conditions: Array[Prism::node]
- #
- # source://prism//lib/prism/node.rb#16212
- def conditions; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?keyword_loc: Location, ?conditions: Array[Prism::node], ?then_keyword_loc: Location?, ?statements: StatementsNode?) -> WhenNode
- #
- # source://prism//lib/prism/node.rb#16192
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), keyword_loc: T.unsafe(nil), conditions: T.unsafe(nil), then_keyword_loc: T.unsafe(nil), statements: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#16174
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, keyword_loc: Location, conditions: Array[Prism::node], then_keyword_loc: Location?, statements: StatementsNode? }
- #
- # source://prism//lib/prism/node.rb#16200
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#16241
- sig { override.returns(String) }
- def inspect; end
-
- # def keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#16231
- def keyword; end
-
- # attr_reader keyword_loc: Location
- #
- # source://prism//lib/prism/node.rb#16205
- def keyword_loc; end
-
- # attr_reader statements: StatementsNode?
- #
- # source://prism//lib/prism/node.rb#16228
- def statements; end
-
- # def then_keyword: () -> String?
- #
- # source://prism//lib/prism/node.rb#16236
- def then_keyword; end
-
- # attr_reader then_keyword_loc: Location?
- #
- # source://prism//lib/prism/node.rb#16215
- def then_keyword_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#16246
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#16251
- def type; end
- end
-end
-
-# Represents the use of the `while` keyword, either in the block form or the modifier form.
-#
-# bar while foo
-# ^^^^^^^^^^^^^
-#
-# while foo do bar end
-# ^^^^^^^^^^^^^^^^^^^^
-#
-# source://prism//lib/prism/node.rb#16274
-class Prism::WhileNode < ::Prism::Node
- # Initialize a new WhileNode node.
- #
- # @return [WhileNode] a new instance of WhileNode
- #
- # source://prism//lib/prism/node.rb#16276
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- keyword_loc: Prism::Location,
- closing_loc: T.nilable(Prism::Location),
- predicate: Prism::Node,
- statements: T.nilable(Prism::StatementsNode)
- ).void
- end
- def initialize(source, node_id, location, flags, keyword_loc, closing_loc, predicate, statements); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#16381
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#16288
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def begin_modifier?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#16324
- sig { returns(T::Boolean) }
- def begin_modifier?; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#16293
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def closing: () -> String?
- #
- # source://prism//lib/prism/node.rb#16360
- sig { returns(T.nilable(String)) }
- def closing; end
-
- # attr_reader closing_loc: Location?
- #
- # source://prism//lib/prism/node.rb#16336
- sig { returns(T.nilable(Prism::Location)) }
- def closing_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#16306
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#16298
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?keyword_loc: Location, ?closing_loc: Location?, ?predicate: Prism::node, ?statements: StatementsNode?) -> WhileNode
- #
- # source://prism//lib/prism/node.rb#16311
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- keyword_loc: Prism::Location,
- closing_loc: T.nilable(Prism::Location),
- predicate: Prism::Node,
- statements: T.nilable(Prism::StatementsNode)
- ).returns(Prism::WhileNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), keyword_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), predicate: T.unsafe(nil), statements: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#16293
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, keyword_loc: Location, closing_loc: Location?, predicate: Prism::node, statements: StatementsNode? }
- #
- # source://prism//lib/prism/node.rb#16319
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#16365
- sig { override.returns(String) }
- def inspect; end
-
- # def keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#16355
- sig { returns(String) }
- def keyword; end
-
- # attr_reader keyword_loc: Location
- #
- # source://prism//lib/prism/node.rb#16329
- sig { returns(Prism::Location) }
- def keyword_loc; end
-
- # source://prism//lib/prism/parse_result/newlines.rb#109
- def newline_flag!(lines); end
-
- # attr_reader predicate: Prism::node
- #
- # source://prism//lib/prism/node.rb#16349
- sig { returns(Prism::Node) }
- def predicate; end
-
- # attr_reader statements: StatementsNode?
- #
- # source://prism//lib/prism/node.rb#16352
- sig { returns(T.nilable(Prism::StatementsNode)) }
- def statements; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#16370
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#16375
- def type; end
- end
-end
-
-# Represents an xstring literal with no interpolation.
-#
-# `foo`
-# ^^^^^
-#
-# source://prism//lib/prism/node.rb#16395
-class Prism::XStringNode < ::Prism::Node
- include ::Prism::HeredocQuery
-
- # Initialize a new XStringNode node.
- #
- # @return [XStringNode] a new instance of XStringNode
- #
- # source://prism//lib/prism/node.rb#16397
- sig do
- params(
- source: Prism::Source,
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- opening_loc: Prism::Location,
- content_loc: Prism::Location,
- closing_loc: Prism::Location,
- unescaped: String
- ).void
- end
- def initialize(source, node_id, location, flags, opening_loc, content_loc, closing_loc, unescaped); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#16507
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#16409
- sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
- def accept(visitor); end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#16414
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def child_nodes; end
-
- # def closing: () -> String
- #
- # source://prism//lib/prism/node.rb#16486
- sig { returns(String) }
- def closing; end
-
- # attr_reader closing_loc: Location
- #
- # source://prism//lib/prism/node.rb#16466
- sig { returns(Prism::Location) }
- def closing_loc; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#16424
- sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#16419
- sig { override.returns(T::Array[Prism::Node]) }
- def compact_child_nodes; end
-
- # def content: () -> String
- #
- # source://prism//lib/prism/node.rb#16481
- sig { returns(String) }
- def content; end
-
- # attr_reader content_loc: Location
- #
- # source://prism//lib/prism/node.rb#16459
- sig { returns(Prism::Location) }
- def content_loc; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?opening_loc: Location, ?content_loc: Location, ?closing_loc: Location, ?unescaped: String) -> XStringNode
- #
- # source://prism//lib/prism/node.rb#16429
- sig do
- params(
- node_id: Integer,
- location: Prism::Location,
- flags: Integer,
- opening_loc: Prism::Location,
- content_loc: Prism::Location,
- closing_loc: Prism::Location,
- unescaped: String
- ).returns(Prism::XStringNode)
- end
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), opening_loc: T.unsafe(nil), content_loc: T.unsafe(nil), closing_loc: T.unsafe(nil), unescaped: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#16414
- sig { override.returns(T::Array[T.nilable(Prism::Node)]) }
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, opening_loc: Location, content_loc: Location, closing_loc: Location, unescaped: String }
- #
- # source://prism//lib/prism/node.rb#16437
- sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def forced_binary_encoding?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#16447
- sig { returns(T::Boolean) }
- def forced_binary_encoding?; end
-
- # def forced_utf8_encoding?: () -> bool
- #
- # @return [Boolean]
- #
- # source://prism//lib/prism/node.rb#16442
- sig { returns(T::Boolean) }
- def forced_utf8_encoding?; end
-
- sig { returns(T::Boolean) }
- def heredoc?; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#16491
- sig { override.returns(String) }
- def inspect; end
-
- # def opening: () -> String
- #
- # source://prism//lib/prism/node.rb#16476
- sig { returns(String) }
- def opening; end
-
- # attr_reader opening_loc: Location
- #
- # source://prism//lib/prism/node.rb#16452
- sig { returns(Prism::Location) }
- def opening_loc; end
-
- # Occasionally it's helpful to treat a string as if it were interpolated so
- # that there's a consistent interface for working with strings.
- #
- # source://prism//lib/prism/node_ext.rb#90
- sig { returns(Prism::InterpolatedXStringNode) }
- def to_interpolated; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#16496
- sig { override.returns(Symbol) }
- def type; end
-
- # attr_reader unescaped: String
- #
- # source://prism//lib/prism/node.rb#16473
- sig { returns(String) }
- def unescaped; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#16501
- def type; end
- end
-end
-
-# Represents the use of the `yield` keyword.
-#
-# yield 1
-# ^^^^^^^
-#
-# source://prism//lib/prism/node.rb#16521
-class Prism::YieldNode < ::Prism::Node
- # Initialize a new YieldNode node.
- #
- # @return [YieldNode] a new instance of YieldNode
- #
- # source://prism//lib/prism/node.rb#16523
- def initialize(source, node_id, location, flags, keyword_loc, lparen_loc, arguments, rparen_loc); end
-
- # Implements case-equality for the node. This is effectively == but without
- # comparing the value of locations. Locations are checked only for presence.
- #
- # source://prism//lib/prism/node.rb#16637
- def ===(other); end
-
- # def accept: (Visitor visitor) -> void
- #
- # source://prism//lib/prism/node.rb#16535
- def accept(visitor); end
-
- # attr_reader arguments: ArgumentsNode?
- #
- # source://prism//lib/prism/node.rb#16590
- def arguments; end
-
- # def child_nodes: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#16540
- def child_nodes; end
-
- # def comment_targets: () -> Array[Node | Location]
- #
- # source://prism//lib/prism/node.rb#16552
- def comment_targets; end
-
- # def compact_child_nodes: () -> Array[Node]
- #
- # source://prism//lib/prism/node.rb#16545
- def compact_child_nodes; end
-
- # def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?keyword_loc: Location, ?lparen_loc: Location?, ?arguments: ArgumentsNode?, ?rparen_loc: Location?) -> YieldNode
- #
- # source://prism//lib/prism/node.rb#16557
- def copy(node_id: T.unsafe(nil), location: T.unsafe(nil), flags: T.unsafe(nil), keyword_loc: T.unsafe(nil), lparen_loc: T.unsafe(nil), arguments: T.unsafe(nil), rparen_loc: T.unsafe(nil)); end
-
- # def child_nodes: () -> Array[nil | Node]
- # def deconstruct: () -> Array[nil | Node]
- #
- # source://prism//lib/prism/node.rb#16540
- def deconstruct; end
-
- # def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, keyword_loc: Location, lparen_loc: Location?, arguments: ArgumentsNode?, rparen_loc: Location? }
- #
- # source://prism//lib/prism/node.rb#16565
- def deconstruct_keys(keys); end
-
- sig { override.returns(T::Array[Prism::Reflection::Field]) }
- def fields; end
-
- # def inspect -> String
- #
- # source://prism//lib/prism/node.rb#16621
- sig { override.returns(String) }
- def inspect; end
-
- # def keyword: () -> String
- #
- # source://prism//lib/prism/node.rb#16606
- def keyword; end
-
- # attr_reader keyword_loc: Location
- #
- # source://prism//lib/prism/node.rb#16570
- def keyword_loc; end
-
- # def lparen: () -> String?
- #
- # source://prism//lib/prism/node.rb#16611
- def lparen; end
-
- # attr_reader lparen_loc: Location?
- #
- # source://prism//lib/prism/node.rb#16577
- def lparen_loc; end
-
- # def rparen: () -> String?
- #
- # source://prism//lib/prism/node.rb#16616
- def rparen; end
-
- # attr_reader rparen_loc: Location?
- #
- # source://prism//lib/prism/node.rb#16593
- def rparen_loc; end
-
- # Return a symbol representation of this node type. See `Node#type`.
- #
- # source://prism//lib/prism/node.rb#16626
- sig { override.returns(Symbol) }
- def type; end
-
- class << self
- # Return a symbol representation of this node type. See `Node::type`.
- #
- # source://prism//lib/prism/node.rb#16631
- def type; end
- end
-end