Module: Prism::DSL
| Relationships & Source Files | |
| Extension / Inclusion / Inheritance Descendants | |
|
Included In:
| |
| Defined in: | lib/prism/dsl.rb |
Overview
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.
Instance Method Summary
-
#alias_global_variable_node(source: default_source, node_id: 0, location: default_location, flags: 0, new_name: default_node(source, location), old_name: default_node(source, location), keyword_loc: location)
Create a new
AliasGlobalVariableNodenode. -
#alias_method_node(source: default_source, node_id: 0, location: default_location, flags: 0, new_name: default_node(source, location), old_name: default_node(source, location), keyword_loc: location)
Create a new
AliasMethodNodenode. -
#alternation_pattern_node(source: default_source, node_id: 0, location: default_location, flags: 0, left: default_node(source, location), right: default_node(source, location), operator_loc: location)
Create a new
AlternationPatternNodenode. -
#and_node(source: default_source, node_id: 0, location: default_location, flags: 0, left: default_node(source, location), right: default_node(source, location), operator_loc: location)
Create a new
AndNodenode. -
#arguments_node(source: default_source, node_id: 0, location: default_location, flags: 0, arguments: [])
Create a new
ArgumentsNodenode. -
#arguments_node_flag(name)
Retrieve the value of one of the
ArgumentsNodeFlagsflags. -
#array_node(source: default_source, node_id: 0, location: default_location, flags: 0, elements: [], opening_loc: nil, closing_loc: nil)
Create a new
ArrayNodenode. -
#array_node_flag(name)
Retrieve the value of one of the
ArrayNodeFlagsflags. -
#array_pattern_node(source: default_source, node_id: 0, location: default_location, flags: 0, constant: nil, requireds: [], rest: nil, posts: [], opening_loc: nil, closing_loc: nil)
Create a new
ArrayPatternNodenode. -
#assoc_node(source: default_source, node_id: 0, location: default_location, flags: 0, key: default_node(source, location), value: default_node(source, location), operator_loc: nil)
Create a new
AssocNodenode. -
#assoc_splat_node(source: default_source, node_id: 0, location: default_location, flags: 0, value: nil, operator_loc: location)
Create a new
AssocSplatNodenode. -
#back_reference_read_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"")
Create a new
BackReferenceReadNodenode. -
#begin_node(source: default_source, node_id: 0, location: default_location, flags: 0, begin_keyword_loc: nil, statements: nil, rescue_clause: nil, else_clause: nil, ensure_clause: nil, end_keyword_loc: nil)
Create a new
BeginNodenode. -
#block_argument_node(source: default_source, node_id: 0, location: default_location, flags: 0, expression: nil, operator_loc: location)
Create a new
BlockArgumentNodenode. -
#block_local_variable_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"")
Create a new
BlockLocalVariableNodenode. -
#block_node(source: default_source, node_id: 0, location: default_location, flags: 0, locals: [], parameters: nil, body: nil, opening_loc: location, closing_loc: location)
Create a new
BlockNodenode. -
#block_parameter_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: nil, name_loc: nil, operator_loc: location)
Create a new
BlockParameterNodenode. -
#block_parameters_node(source: default_source, node_id: 0, location: default_location, flags: 0, parameters: nil, locals: [], opening_loc: nil, closing_loc: nil)
Create a new
BlockParametersNodenode. -
#break_node(source: default_source, node_id: 0, location: default_location, flags: 0, arguments: nil, keyword_loc: location)
Create a new
BreakNodenode. -
#call_and_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, receiver: nil, call_operator_loc: nil, message_loc: nil, read_name: :"", write_name: :"", operator_loc: location, value: default_node(source, location))
Create a new
CallAndWriteNodenode. -
#call_node(source: default_source, node_id: 0, location: default_location, flags: 0, receiver: nil, call_operator_loc: nil, name: :"", message_loc: nil, opening_loc: nil, arguments: nil, closing_loc: nil, block: nil)
Create a new
CallNodenode. -
#call_node_flag(name)
Retrieve the value of one of the
CallNodeFlagsflags. -
#call_operator_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, receiver: nil, call_operator_loc: nil, message_loc: nil, read_name: :"", write_name: :"", binary_operator: :"", binary_operator_loc: location, value: default_node(source, location))
Create a new
CallOperatorWriteNodenode. -
#call_or_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, receiver: nil, call_operator_loc: nil, message_loc: nil, read_name: :"", write_name: :"", operator_loc: location, value: default_node(source, location))
Create a new
CallOrWriteNodenode. -
#call_target_node(source: default_source, node_id: 0, location: default_location, flags: 0, receiver: default_node(source, location), call_operator_loc: location, name: :"", message_loc: location)
Create a new
CallTargetNodenode. -
#capture_pattern_node(source: default_source, node_id: 0, location: default_location, flags: 0, value: default_node(source, location), target: default_node(source, location), operator_loc: location)
Create a new
CapturePatternNodenode. -
#case_match_node(source: default_source, node_id: 0, location: default_location, flags: 0, predicate: nil, conditions: [], consequent: nil, case_keyword_loc: location, end_keyword_loc: location)
Create a new
CaseMatchNodenode. -
#case_node(source: default_source, node_id: 0, location: default_location, flags: 0, predicate: nil, conditions: [], consequent: nil, case_keyword_loc: location, end_keyword_loc: location)
Create a new
CaseNodenode. -
#class_node(source: default_source, node_id: 0, location: default_location, flags: 0, locals: [], class_keyword_loc: location, constant_path: default_node(source, location), inheritance_operator_loc: nil, superclass: nil, body: nil, end_keyword_loc: location, name: :"")
Create a new
ClassNodenode. -
#class_variable_and_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, operator_loc: location, value: default_node(source, location))
Create a new
ClassVariableAndWriteNodenode. -
#class_variable_operator_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, binary_operator_loc: location, value: default_node(source, location), binary_operator: :"")
Create a new
ClassVariableOperatorWriteNodenode. -
#class_variable_or_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, operator_loc: location, value: default_node(source, location))
Create a new
ClassVariableOrWriteNodenode. -
#class_variable_read_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"")
Create a new
ClassVariableReadNodenode. -
#class_variable_target_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"")
Create a new
ClassVariableTargetNodenode. -
#class_variable_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, value: default_node(source, location), operator_loc: location)
Create a new
ClassVariableWriteNodenode. -
#constant_and_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, operator_loc: location, value: default_node(source, location))
Create a new
ConstantAndWriteNodenode. -
#constant_operator_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, binary_operator_loc: location, value: default_node(source, location), binary_operator: :"")
Create a new
ConstantOperatorWriteNodenode. -
#constant_or_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, operator_loc: location, value: default_node(source, location))
Create a new
ConstantOrWriteNodenode. -
#constant_path_and_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, target: constant_path_node(source: source), operator_loc: location, value: default_node(source, location))
Create a new
ConstantPathAndWriteNodenode. -
#constant_path_node(source: default_source, node_id: 0, location: default_location, flags: 0, parent: nil, name: nil, delimiter_loc: location, name_loc: location)
Create a new
ConstantPathNodenode. -
#constant_path_operator_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, target: constant_path_node(source: source), binary_operator_loc: location, value: default_node(source, location), binary_operator: :"")
Create a new
ConstantPathOperatorWriteNodenode. -
#constant_path_or_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, target: constant_path_node(source: source), operator_loc: location, value: default_node(source, location))
Create a new
ConstantPathOrWriteNodenode. -
#constant_path_target_node(source: default_source, node_id: 0, location: default_location, flags: 0, parent: nil, name: nil, delimiter_loc: location, name_loc: location)
Create a new
ConstantPathTargetNodenode. -
#constant_path_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, target: constant_path_node(source: source), operator_loc: location, value: default_node(source, location))
Create a new
ConstantPathWriteNodenode. -
#constant_read_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"")
Create a new
ConstantReadNodenode. -
#constant_target_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"")
Create a new
ConstantTargetNodenode. -
#constant_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, value: default_node(source, location), operator_loc: location)
Create a new
ConstantWriteNodenode. -
#def_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, receiver: nil, parameters: nil, body: nil, locals: [], def_keyword_loc: location, operator_loc: nil, lparen_loc: nil, rparen_loc: nil, equal_loc: nil, end_keyword_loc: nil)
Create a new
DefNodenode. -
#defined_node(source: default_source, node_id: 0, location: default_location, flags: 0, lparen_loc: nil, value: default_node(source, location), rparen_loc: nil, keyword_loc: location)
Create a new
DefinedNodenode. -
#else_node(source: default_source, node_id: 0, location: default_location, flags: 0, else_keyword_loc: location, statements: nil, end_keyword_loc: nil)
Create a new
ElseNodenode. -
#embedded_statements_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: location, statements: nil, closing_loc: location)
Create a new
EmbeddedStatementsNodenode. -
#embedded_variable_node(source: default_source, node_id: 0, location: default_location, flags: 0, operator_loc: location, variable: default_node(source, location))
Create a new
EmbeddedVariableNodenode. -
#encoding_flag(name)
Retrieve the value of one of the
EncodingFlagsflags. -
#ensure_node(source: default_source, node_id: 0, location: default_location, flags: 0, ensure_keyword_loc: location, statements: nil, end_keyword_loc: location)
Create a new
EnsureNodenode. -
#false_node(source: default_source, node_id: 0, location: default_location, flags: 0)
Create a new
FalseNodenode. -
#find_pattern_node(source: default_source, node_id: 0, location: default_location, flags: 0, constant: nil, left: default_node(source, location), requireds: [], right: default_node(source, location), opening_loc: nil, closing_loc: nil)
Create a new
FindPatternNodenode. -
#flip_flop_node(source: default_source, node_id: 0, location: default_location, flags: 0, left: nil, right: nil, operator_loc: location)
Create a new
FlipFlopNodenode. -
#float_node(source: default_source, node_id: 0, location: default_location, flags: 0, value: 0.0)
Create a new
FloatNodenode. -
#for_node(source: default_source, node_id: 0, location: default_location, flags: 0, index: default_node(source, location), collection: default_node(source, location), statements: nil, for_keyword_loc: location, in_keyword_loc: location, do_keyword_loc: nil, end_keyword_loc: location)
Create a new
ForNodenode. -
#forwarding_arguments_node(source: default_source, node_id: 0, location: default_location, flags: 0)
Create a new
ForwardingArgumentsNodenode. -
#forwarding_parameter_node(source: default_source, node_id: 0, location: default_location, flags: 0)
Create a new
ForwardingParameterNodenode. -
#forwarding_super_node(source: default_source, node_id: 0, location: default_location, flags: 0, block: nil)
Create a new
ForwardingSuperNodenode. -
#global_variable_and_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, operator_loc: location, value: default_node(source, location))
Create a new
GlobalVariableAndWriteNodenode. -
#global_variable_operator_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, binary_operator_loc: location, value: default_node(source, location), binary_operator: :"")
Create a new
GlobalVariableOperatorWriteNodenode. -
#global_variable_or_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, operator_loc: location, value: default_node(source, location))
Create a new
GlobalVariableOrWriteNodenode. -
#global_variable_read_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"")
Create a new
GlobalVariableReadNodenode. -
#global_variable_target_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"")
Create a new
GlobalVariableTargetNodenode. -
#global_variable_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, value: default_node(source, location), operator_loc: location)
Create a new
GlobalVariableWriteNodenode. -
#hash_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: location, elements: [], closing_loc: location)
Create a new
HashNodenode. -
#hash_pattern_node(source: default_source, node_id: 0, location: default_location, flags: 0, constant: nil, elements: [], rest: nil, opening_loc: nil, closing_loc: nil)
Create a new
HashPatternNodenode. -
#if_node(source: default_source, node_id: 0, location: default_location, flags: 0, if_keyword_loc: nil, predicate: default_node(source, location), then_keyword_loc: nil, statements: nil, consequent: nil, end_keyword_loc: nil)
Create a new
IfNodenode. -
#imaginary_node(source: default_source, node_id: 0, location: default_location, flags: 0, numeric: float_node(source: source))
Create a new
ImaginaryNodenode. -
#implicit_node(source: default_source, node_id: 0, location: default_location, flags: 0, value: default_node(source, location))
Create a new
ImplicitNodenode. -
#implicit_rest_node(source: default_source, node_id: 0, location: default_location, flags: 0)
Create a new
ImplicitRestNodenode. -
#in_node(source: default_source, node_id: 0, location: default_location, flags: 0, pattern: default_node(source, location), statements: nil, in_loc: location, then_loc: nil)
Create a new
InNodenode. -
#index_and_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, receiver: nil, call_operator_loc: nil, opening_loc: location, arguments: nil, closing_loc: location, block: nil, operator_loc: location, value: default_node(source, location))
Create a new
IndexAndWriteNodenode. -
#index_operator_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, receiver: nil, call_operator_loc: nil, opening_loc: location, arguments: nil, closing_loc: location, block: nil, binary_operator: :"", binary_operator_loc: location, value: default_node(source, location))
Create a new
IndexOperatorWriteNodenode. -
#index_or_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, receiver: nil, call_operator_loc: nil, opening_loc: location, arguments: nil, closing_loc: location, block: nil, operator_loc: location, value: default_node(source, location))
Create a new
IndexOrWriteNodenode. -
#index_target_node(source: default_source, node_id: 0, location: default_location, flags: 0, receiver: default_node(source, location), opening_loc: location, arguments: nil, closing_loc: location, block: nil)
Create a new
IndexTargetNodenode. -
#instance_variable_and_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, operator_loc: location, value: default_node(source, location))
Create a new
InstanceVariableAndWriteNodenode. -
#instance_variable_operator_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, binary_operator_loc: location, value: default_node(source, location), binary_operator: :"")
Create a new
InstanceVariableOperatorWriteNodenode. -
#instance_variable_or_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, operator_loc: location, value: default_node(source, location))
Create a new
InstanceVariableOrWriteNodenode. -
#instance_variable_read_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"")
Create a new
InstanceVariableReadNodenode. -
#instance_variable_target_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"")
Create a new
InstanceVariableTargetNodenode. -
#instance_variable_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, value: default_node(source, location), operator_loc: location)
Create a new
InstanceVariableWriteNodenode. -
#integer_base_flag(name)
Retrieve the value of one of the
IntegerBaseFlagsflags. -
#integer_node(source: default_source, node_id: 0, location: default_location, flags: 0, value: 0)
Create a new
IntegerNodenode. -
#interpolated_match_last_line_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: location, parts: [], closing_loc: location)
Create a new
InterpolatedMatchLastLineNodenode. -
#interpolated_regular_expression_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: location, parts: [], closing_loc: location)
Create a new
InterpolatedRegularExpressionNodenode. -
#interpolated_string_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: nil, parts: [], closing_loc: nil)
Create a new
InterpolatedStringNodenode. -
#interpolated_string_node_flag(name)
Retrieve the value of one of the
InterpolatedStringNodeFlagsflags. -
#interpolated_symbol_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: nil, parts: [], closing_loc: nil)
Create a new
InterpolatedSymbolNodenode. -
#interpolated_x_string_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: location, parts: [], closing_loc: location)
Create a new
InterpolatedXStringNodenode. -
#it_local_variable_read_node(source: default_source, node_id: 0, location: default_location, flags: 0)
Create a new
ItLocalVariableReadNodenode. -
#it_parameters_node(source: default_source, node_id: 0, location: default_location, flags: 0)
Create a new
ItParametersNodenode. -
#keyword_hash_node(source: default_source, node_id: 0, location: default_location, flags: 0, elements: [])
Create a new
KeywordHashNodenode. -
#keyword_hash_node_flag(name)
Retrieve the value of one of the
KeywordHashNodeFlagsflags. -
#keyword_rest_parameter_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: nil, name_loc: nil, operator_loc: location)
Create a new
KeywordRestParameterNodenode. -
#lambda_node(source: default_source, node_id: 0, location: default_location, flags: 0, locals: [], operator_loc: location, opening_loc: location, closing_loc: location, parameters: nil, body: nil)
Create a new
LambdaNodenode. -
#local_variable_and_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name_loc: location, operator_loc: location, value: default_node(source, location), name: :"", depth: 0)
Create a new
LocalVariableAndWriteNodenode. -
#local_variable_operator_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name_loc: location, binary_operator_loc: location, value: default_node(source, location), name: :"", binary_operator: :"", depth: 0)
Create a new
LocalVariableOperatorWriteNodenode. -
#local_variable_or_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name_loc: location, operator_loc: location, value: default_node(source, location), name: :"", depth: 0)
Create a new
LocalVariableOrWriteNodenode. -
#local_variable_read_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", depth: 0)
Create a new
LocalVariableReadNodenode. -
#local_variable_target_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", depth: 0)
Create a new
LocalVariableTargetNodenode. -
#local_variable_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", depth: 0, name_loc: location, value: default_node(source, location), operator_loc: location)
Create a new
LocalVariableWriteNodenode. -
#location(source: default_source, start_offset: 0, length: 0)
Create a new
Locationobject. -
#loop_flag(name)
Retrieve the value of one of the
LoopFlagsflags. -
#match_last_line_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: location, content_loc: location, closing_loc: location, unescaped: "")
Create a new
MatchLastLineNodenode. -
#match_predicate_node(source: default_source, node_id: 0, location: default_location, flags: 0, value: default_node(source, location), pattern: default_node(source, location), operator_loc: location)
Create a new
MatchPredicateNodenode. -
#match_required_node(source: default_source, node_id: 0, location: default_location, flags: 0, value: default_node(source, location), pattern: default_node(source, location), operator_loc: location)
Create a new
MatchRequiredNodenode. -
#match_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, call: call_node(source: source), targets: [])
Create a new
MatchWriteNodenode. -
#missing_node(source: default_source, node_id: 0, location: default_location, flags: 0)
Create a new
MissingNodenode. -
#module_node(source: default_source, node_id: 0, location: default_location, flags: 0, locals: [], module_keyword_loc: location, constant_path: default_node(source, location), body: nil, end_keyword_loc: location, name: :"")
Create a new
ModuleNodenode. -
#multi_target_node(source: default_source, node_id: 0, location: default_location, flags: 0, lefts: [], rest: nil, rights: [], lparen_loc: nil, rparen_loc: nil)
Create a new
MultiTargetNodenode. -
#multi_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, lefts: [], rest: nil, rights: [], lparen_loc: nil, rparen_loc: nil, operator_loc: location, value: default_node(source, location))
Create a new
MultiWriteNodenode. -
#next_node(source: default_source, node_id: 0, location: default_location, flags: 0, arguments: nil, keyword_loc: location)
Create a new
NextNodenode. -
#nil_node(source: default_source, node_id: 0, location: default_location, flags: 0)
Create a new
NilNodenode. -
#no_keywords_parameter_node(source: default_source, node_id: 0, location: default_location, flags: 0, operator_loc: location, keyword_loc: location)
Create a new
NoKeywordsParameterNodenode. -
#numbered_parameters_node(source: default_source, node_id: 0, location: default_location, flags: 0, maximum: 0)
Create a new
NumberedParametersNodenode. -
#numbered_reference_read_node(source: default_source, node_id: 0, location: default_location, flags: 0, number: 0)
Create a new
NumberedReferenceReadNodenode. -
#optional_keyword_parameter_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, value: default_node(source, location))
Create a new
OptionalKeywordParameterNodenode. -
#optional_parameter_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, operator_loc: location, value: default_node(source, location))
Create a new
OptionalParameterNodenode. -
#or_node(source: default_source, node_id: 0, location: default_location, flags: 0, left: default_node(source, location), right: default_node(source, location), operator_loc: location)
Create a new
OrNodenode. -
#parameter_flag(name)
Retrieve the value of one of the
ParameterFlagsflags. -
#parameters_node(source: default_source, node_id: 0, location: default_location, flags: 0, requireds: [], optionals: [], rest: nil, posts: [], keywords: [], keyword_rest: nil, block: nil)
Create a new
ParametersNodenode. -
#parentheses_node(source: default_source, node_id: 0, location: default_location, flags: 0, body: nil, opening_loc: location, closing_loc: location)
Create a new
ParenthesesNodenode. -
#pinned_expression_node(source: default_source, node_id: 0, location: default_location, flags: 0, expression: default_node(source, location), operator_loc: location, lparen_loc: location, rparen_loc: location)
Create a new
PinnedExpressionNodenode. -
#pinned_variable_node(source: default_source, node_id: 0, location: default_location, flags: 0, variable: default_node(source, location), operator_loc: location)
Create a new
PinnedVariableNodenode. -
#post_execution_node(source: default_source, node_id: 0, location: default_location, flags: 0, statements: nil, keyword_loc: location, opening_loc: location, closing_loc: location)
Create a new
PostExecutionNodenode. -
#pre_execution_node(source: default_source, node_id: 0, location: default_location, flags: 0, statements: nil, keyword_loc: location, opening_loc: location, closing_loc: location)
Create a new
PreExecutionNodenode. -
#program_node(source: default_source, node_id: 0, location: default_location, flags: 0, locals: [], statements: statements_node(source: source))
Create a new
ProgramNodenode. -
#range_flag(name)
Retrieve the value of one of the
RangeFlagsflags. -
#range_node(source: default_source, node_id: 0, location: default_location, flags: 0, left: nil, right: nil, operator_loc: location)
Create a new
RangeNodenode. -
#rational_node(source: default_source, node_id: 0, location: default_location, flags: 0, numerator: 0, denominator: 0)
Create a new
RationalNodenode. -
#redo_node(source: default_source, node_id: 0, location: default_location, flags: 0)
Create a new
RedoNodenode. -
#regular_expression_flag(name)
Retrieve the value of one of the
RegularExpressionFlagsflags. -
#regular_expression_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: location, content_loc: location, closing_loc: location, unescaped: "")
Create a new
RegularExpressionNodenode. -
#required_keyword_parameter_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location)
Create a new
RequiredKeywordParameterNodenode. -
#required_parameter_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"")
Create a new
RequiredParameterNodenode. -
#rescue_modifier_node(source: default_source, node_id: 0, location: default_location, flags: 0, expression: default_node(source, location), keyword_loc: location, rescue_expression: default_node(source, location))
Create a new
RescueModifierNodenode. -
#rescue_node(source: default_source, node_id: 0, location: default_location, flags: 0, keyword_loc: location, exceptions: [], operator_loc: nil, reference: nil, statements: nil, consequent: nil)
Create a new
RescueNodenode. -
#rest_parameter_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: nil, name_loc: nil, operator_loc: location)
Create a new
RestParameterNodenode. -
#retry_node(source: default_source, node_id: 0, location: default_location, flags: 0)
Create a new
RetryNodenode. -
#return_node(source: default_source, node_id: 0, location: default_location, flags: 0, keyword_loc: location, arguments: nil)
Create a new
ReturnNodenode. -
#self_node(source: default_source, node_id: 0, location: default_location, flags: 0)
Create a new
SelfNodenode. -
#shareable_constant_node(source: default_source, node_id: 0, location: default_location, flags: 0, write: constant_write_node(source: source))
Create a new
ShareableConstantNodenode. -
#shareable_constant_node_flag(name)
Retrieve the value of one of the
ShareableConstantNodeFlagsflags. -
#singleton_class_node(source: default_source, node_id: 0, location: default_location, flags: 0, locals: [], class_keyword_loc: location, operator_loc: location, expression: default_node(source, location), body: nil, end_keyword_loc: location)
Create a new
SingletonClassNodenode. -
#source(string)
Create a new
Sourceobject. -
#source_encoding_node(source: default_source, node_id: 0, location: default_location, flags: 0)
Create a new
SourceEncodingNodenode. -
#source_file_node(source: default_source, node_id: 0, location: default_location, flags: 0, filepath: "")
Create a new
SourceFileNodenode. -
#source_line_node(source: default_source, node_id: 0, location: default_location, flags: 0)
Create a new
SourceLineNodenode. -
#splat_node(source: default_source, node_id: 0, location: default_location, flags: 0, operator_loc: location, expression: nil)
Create a new
SplatNodenode. -
#statements_node(source: default_source, node_id: 0, location: default_location, flags: 0, body: [])
Create a new
StatementsNodenode. -
#string_flag(name)
Retrieve the value of one of the
StringFlagsflags. -
#string_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: nil, content_loc: location, closing_loc: nil, unescaped: "")
Create a new
StringNodenode. -
#super_node(source: default_source, node_id: 0, location: default_location, flags: 0, keyword_loc: location, lparen_loc: nil, arguments: nil, rparen_loc: nil, block: nil)
Create a new
SuperNodenode. -
#symbol_flag(name)
Retrieve the value of one of the
SymbolFlagsflags. -
#symbol_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: nil, value_loc: nil, closing_loc: nil, unescaped: "")
Create a new
SymbolNodenode. -
#true_node(source: default_source, node_id: 0, location: default_location, flags: 0)
Create a new
TrueNodenode. -
#undef_node(source: default_source, node_id: 0, location: default_location, flags: 0, names: [], keyword_loc: location)
Create a new
UndefNodenode. -
#unless_node(source: default_source, node_id: 0, location: default_location, flags: 0, keyword_loc: location, predicate: default_node(source, location), then_keyword_loc: nil, statements: nil, consequent: nil, end_keyword_loc: nil)
Create a new
UnlessNodenode. -
#until_node(source: default_source, node_id: 0, location: default_location, flags: 0, keyword_loc: location, closing_loc: nil, predicate: default_node(source, location), statements: nil)
Create a new
UntilNodenode. -
#when_node(source: default_source, node_id: 0, location: default_location, flags: 0, keyword_loc: location, conditions: [], then_keyword_loc: nil, statements: nil)
Create a new
WhenNodenode. -
#while_node(source: default_source, node_id: 0, location: default_location, flags: 0, keyword_loc: location, closing_loc: nil, predicate: default_node(source, location), statements: nil)
Create a new
WhileNodenode. -
#x_string_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: location, content_loc: location, closing_loc: location, unescaped: "")
Create a new
XStringNodenode. -
#yield_node(source: default_source, node_id: 0, location: default_location, flags: 0, keyword_loc: location, lparen_loc: nil, arguments: nil, rparen_loc: nil)
Create a new
YieldNodenode. -
#default_location
private
The default location object that gets attached to nodes if no location is specified, which uses the given source.
-
#default_node(source, location)
private
The default node that gets attached to nodes if no node is specified for a required node field.
-
#default_source
private
The default source object that gets attached to nodes and locations if no source is specified.
Instance Method Details
#alias_global_variable_node(source: default_source, node_id: 0, location: default_location, flags: 0, new_name: default_node(source, location), old_name: default_node(source, location), keyword_loc: location)
Create a new AliasGlobalVariableNode node.
# File 'lib/prism/dsl.rb', line 77
def alias_global_variable_node(source: default_source, node_id: 0, location: default_location, flags: 0, new_name: default_node(source, location), old_name: default_node(source, location), keyword_loc: location) AliasGlobalVariableNode.new(source, node_id, location, flags, new_name, old_name, keyword_loc) end
#alias_method_node(source: default_source, node_id: 0, location: default_location, flags: 0, new_name: default_node(source, location), old_name: default_node(source, location), keyword_loc: location)
Create a new AliasMethodNode node.
# File 'lib/prism/dsl.rb', line 82
def alias_method_node(source: default_source, node_id: 0, location: default_location, flags: 0, new_name: default_node(source, location), old_name: default_node(source, location), keyword_loc: location) AliasMethodNode.new(source, node_id, location, flags, new_name, old_name, keyword_loc) end
#alternation_pattern_node(source: default_source, node_id: 0, location: default_location, flags: 0, left: default_node(source, location), right: default_node(source, location), operator_loc: location)
Create a new AlternationPatternNode node.
# File 'lib/prism/dsl.rb', line 87
def alternation_pattern_node(source: default_source, node_id: 0, location: default_location, flags: 0, left: default_node(source, location), right: default_node(source, location), operator_loc: location) AlternationPatternNode.new(source, node_id, location, flags, left, right, operator_loc) end
#and_node(source: default_source, node_id: 0, location: default_location, flags: 0, left: default_node(source, location), right: default_node(source, location), operator_loc: location)
Create a new AndNode node.
# File 'lib/prism/dsl.rb', line 92
def and_node(source: default_source, node_id: 0, location: default_location, flags: 0, left: default_node(source, location), right: default_node(source, location), operator_loc: location) AndNode.new(source, node_id, location, flags, left, right, operator_loc) end
#arguments_node(source: default_source, node_id: 0, location: default_location, flags: 0, arguments: [])
Create a new ArgumentsNode node.
# File 'lib/prism/dsl.rb', line 97
def arguments_node(source: default_source, node_id: 0, location: default_location, flags: 0, arguments: []) ArgumentsNode.new(source, node_id, location, flags, arguments) end
#arguments_node_flag(name)
Retrieve the value of one of the ArgumentsNodeFlags flags.
# File 'lib/prism/dsl.rb', line 832
def arguments_node_flag(name) case name when :contains_keywords then ArgumentsNodeFlags::CONTAINS_KEYWORDS when :contains_keyword_splat then ArgumentsNodeFlags::CONTAINS_KEYWORD_SPLAT else Kernel.raise ArgumentError, "invalid ArgumentsNodeFlags flag: #{name.inspect}" end end
#array_node(source: default_source, node_id: 0, location: default_location, flags: 0, elements: [], opening_loc: nil, closing_loc: nil)
Create a new ArrayNode node.
# File 'lib/prism/dsl.rb', line 102
def array_node(source: default_source, node_id: 0, location: default_location, flags: 0, elements: [], opening_loc: nil, closing_loc: nil) ArrayNode.new(source, node_id, location, flags, elements, opening_loc, closing_loc) end
#array_node_flag(name)
Retrieve the value of one of the ArrayNodeFlags flags.
# File 'lib/prism/dsl.rb', line 841
def array_node_flag(name) case name when :contains_splat then ArrayNodeFlags::CONTAINS_SPLAT else Kernel.raise ArgumentError, "invalid ArrayNodeFlags flag: #{name.inspect}" end end
#array_pattern_node(source: default_source, node_id: 0, location: default_location, flags: 0, constant: nil, requireds: [], rest: nil, posts: [], opening_loc: nil, closing_loc: nil)
Create a new ArrayPatternNode node.
# File 'lib/prism/dsl.rb', line 107
def array_pattern_node(source: default_source, node_id: 0, location: default_location, flags: 0, constant: nil, requireds: [], rest: nil, posts: [], opening_loc: nil, closing_loc: nil) ArrayPatternNode.new(source, node_id, location, flags, constant, requireds, rest, posts, opening_loc, closing_loc) end
#assoc_node(source: default_source, node_id: 0, location: default_location, flags: 0, key: default_node(source, location), value: default_node(source, location), operator_loc: nil)
Create a new AssocNode node.
# File 'lib/prism/dsl.rb', line 112
def assoc_node(source: default_source, node_id: 0, location: default_location, flags: 0, key: default_node(source, location), value: default_node(source, location), operator_loc: nil) AssocNode.new(source, node_id, location, flags, key, value, operator_loc) end
#assoc_splat_node(source: default_source, node_id: 0, location: default_location, flags: 0, value: nil, operator_loc: location)
Create a new AssocSplatNode node.
# File 'lib/prism/dsl.rb', line 117
def assoc_splat_node(source: default_source, node_id: 0, location: default_location, flags: 0, value: nil, operator_loc: location) AssocSplatNode.new(source, node_id, location, flags, value, operator_loc) end
#back_reference_read_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"")
Create a new BackReferenceReadNode node.
# File 'lib/prism/dsl.rb', line 122
def back_reference_read_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"") BackReferenceReadNode.new(source, node_id, location, flags, name) end
#begin_node(source: default_source, node_id: 0, location: default_location, flags: 0, begin_keyword_loc: nil, statements: nil, rescue_clause: nil, else_clause: nil, ensure_clause: nil, end_keyword_loc: nil)
Create a new BeginNode node.
# File 'lib/prism/dsl.rb', line 127
def begin_node(source: default_source, node_id: 0, location: default_location, flags: 0, begin_keyword_loc: nil, statements: nil, rescue_clause: nil, else_clause: nil, ensure_clause: nil, end_keyword_loc: nil) BeginNode.new(source, node_id, location, flags, begin_keyword_loc, statements, rescue_clause, else_clause, ensure_clause, end_keyword_loc) end
#block_argument_node(source: default_source, node_id: 0, location: default_location, flags: 0, expression: nil, operator_loc: location)
Create a new BlockArgumentNode node.
# File 'lib/prism/dsl.rb', line 132
def block_argument_node(source: default_source, node_id: 0, location: default_location, flags: 0, expression: nil, operator_loc: location) BlockArgumentNode.new(source, node_id, location, flags, expression, operator_loc) end
#block_local_variable_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"")
Create a new BlockLocalVariableNode node.
# File 'lib/prism/dsl.rb', line 137
def block_local_variable_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"") BlockLocalVariableNode.new(source, node_id, location, flags, name) end
#block_node(source: default_source, node_id: 0, location: default_location, flags: 0, locals: [], parameters: nil, body: nil, opening_loc: location, closing_loc: location)
Create a new BlockNode node.
# File 'lib/prism/dsl.rb', line 142
def block_node(source: default_source, node_id: 0, location: default_location, flags: 0, locals: [], parameters: nil, body: nil, opening_loc: location, closing_loc: location) BlockNode.new(source, node_id, location, flags, locals, parameters, body, opening_loc, closing_loc) end
#block_parameter_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: nil, name_loc: nil, operator_loc: location)
Create a new BlockParameterNode node.
# File 'lib/prism/dsl.rb', line 147
def block_parameter_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: nil, name_loc: nil, operator_loc: location) BlockParameterNode.new(source, node_id, location, flags, name, name_loc, operator_loc) end
#block_parameters_node(source: default_source, node_id: 0, location: default_location, flags: 0, parameters: nil, locals: [], opening_loc: nil, closing_loc: nil)
Create a new BlockParametersNode node.
# File 'lib/prism/dsl.rb', line 152
def block_parameters_node(source: default_source, node_id: 0, location: default_location, flags: 0, parameters: nil, locals: [], opening_loc: nil, closing_loc: nil) BlockParametersNode.new(source, node_id, location, flags, parameters, locals, opening_loc, closing_loc) end
#break_node(source: default_source, node_id: 0, location: default_location, flags: 0, arguments: nil, keyword_loc: location)
Create a new BreakNode node.
# File 'lib/prism/dsl.rb', line 157
def break_node(source: default_source, node_id: 0, location: default_location, flags: 0, arguments: nil, keyword_loc: location) BreakNode.new(source, node_id, location, flags, arguments, keyword_loc) end
#call_and_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, receiver: nil, call_operator_loc: nil, message_loc: nil, read_name: :"", write_name: :"", operator_loc: location, value: default_node(source, location))
Create a new CallAndWriteNode node.
# File 'lib/prism/dsl.rb', line 162
def call_and_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, receiver: nil, call_operator_loc: nil, message_loc: nil, read_name: :"", write_name: :"", operator_loc: location, value: default_node(source, location)) CallAndWriteNode.new(source, node_id, location, flags, receiver, call_operator_loc, , read_name, write_name, operator_loc, value) end
#call_node(source: default_source, node_id: 0, location: default_location, flags: 0, receiver: nil, call_operator_loc: nil, name: :"", message_loc: nil, opening_loc: nil, arguments: nil, closing_loc: nil, block: nil)
Create a new CallNode node.
# File 'lib/prism/dsl.rb', line 167
def call_node(source: default_source, node_id: 0, location: default_location, flags: 0, receiver: nil, call_operator_loc: nil, name: :"", message_loc: nil, opening_loc: nil, arguments: nil, closing_loc: nil, block: nil) CallNode.new(source, node_id, location, flags, receiver, call_operator_loc, name, , opening_loc, arguments, closing_loc, block) end
#call_node_flag(name)
Retrieve the value of one of the CallNodeFlags flags.
# File 'lib/prism/dsl.rb', line 849
def call_node_flag(name) case name when : then CallNodeFlags::SAFE_NAVIGATION when :variable_call then CallNodeFlags::VARIABLE_CALL when :attribute_write then CallNodeFlags::ATTRIBUTE_WRITE when :ignore_visibility then CallNodeFlags::IGNORE_VISIBILITY else Kernel.raise ArgumentError, "invalid CallNodeFlags flag: #{name.inspect}" end end
#call_operator_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, receiver: nil, call_operator_loc: nil, message_loc: nil, read_name: :"", write_name: :"", binary_operator: :"", binary_operator_loc: location, value: default_node(source, location))
Create a new CallOperatorWriteNode node.
# File 'lib/prism/dsl.rb', line 172
def call_operator_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, receiver: nil, call_operator_loc: nil, message_loc: nil, read_name: :"", write_name: :"", binary_operator: :"", binary_operator_loc: location, value: default_node(source, location)) CallOperatorWriteNode.new(source, node_id, location, flags, receiver, call_operator_loc, , read_name, write_name, binary_operator, binary_operator_loc, value) end
#call_or_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, receiver: nil, call_operator_loc: nil, message_loc: nil, read_name: :"", write_name: :"", operator_loc: location, value: default_node(source, location))
Create a new CallOrWriteNode node.
# File 'lib/prism/dsl.rb', line 177
def call_or_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, receiver: nil, call_operator_loc: nil, message_loc: nil, read_name: :"", write_name: :"", operator_loc: location, value: default_node(source, location)) CallOrWriteNode.new(source, node_id, location, flags, receiver, call_operator_loc, , read_name, write_name, operator_loc, value) end
#call_target_node(source: default_source, node_id: 0, location: default_location, flags: 0, receiver: default_node(source, location), call_operator_loc: location, name: :"", message_loc: location)
Create a new CallTargetNode node.
# File 'lib/prism/dsl.rb', line 182
def call_target_node(source: default_source, node_id: 0, location: default_location, flags: 0, receiver: default_node(source, location), call_operator_loc: location, name: :"", message_loc: location) CallTargetNode.new(source, node_id, location, flags, receiver, call_operator_loc, name, ) end
#capture_pattern_node(source: default_source, node_id: 0, location: default_location, flags: 0, value: default_node(source, location), target: default_node(source, location), operator_loc: location)
Create a new CapturePatternNode node.
# File 'lib/prism/dsl.rb', line 187
def capture_pattern_node(source: default_source, node_id: 0, location: default_location, flags: 0, value: default_node(source, location), target: default_node(source, location), operator_loc: location) CapturePatternNode.new(source, node_id, location, flags, value, target, operator_loc) end
#case_match_node(source: default_source, node_id: 0, location: default_location, flags: 0, predicate: nil, conditions: [], consequent: nil, case_keyword_loc: location, end_keyword_loc: location)
Create a new CaseMatchNode node.
# File 'lib/prism/dsl.rb', line 192
def case_match_node(source: default_source, node_id: 0, location: default_location, flags: 0, predicate: nil, conditions: [], consequent: nil, case_keyword_loc: location, end_keyword_loc: location) CaseMatchNode.new(source, node_id, location, flags, predicate, conditions, consequent, case_keyword_loc, end_keyword_loc) end
#case_node(source: default_source, node_id: 0, location: default_location, flags: 0, predicate: nil, conditions: [], consequent: nil, case_keyword_loc: location, end_keyword_loc: location)
Create a new CaseNode node.
# File 'lib/prism/dsl.rb', line 197
def case_node(source: default_source, node_id: 0, location: default_location, flags: 0, predicate: nil, conditions: [], consequent: nil, case_keyword_loc: location, end_keyword_loc: location) CaseNode.new(source, node_id, location, flags, predicate, conditions, consequent, case_keyword_loc, end_keyword_loc) end
#class_node(source: default_source, node_id: 0, location: default_location, flags: 0, locals: [], class_keyword_loc: location, constant_path: default_node(source, location), inheritance_operator_loc: nil, superclass: nil, body: nil, end_keyword_loc: location, name: :"")
Create a new ClassNode node.
# File 'lib/prism/dsl.rb', line 202
def class_node(source: default_source, node_id: 0, location: default_location, flags: 0, locals: [], class_keyword_loc: location, constant_path: default_node(source, location), inheritance_operator_loc: nil, superclass: nil, body: nil, end_keyword_loc: location, name: :"") ClassNode.new(source, node_id, location, flags, locals, class_keyword_loc, constant_path, inheritance_operator_loc, superclass, body, end_keyword_loc, name) end
#class_variable_and_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, operator_loc: location, value: default_node(source, location))
Create a new ClassVariableAndWriteNode node.
# File 'lib/prism/dsl.rb', line 207
def class_variable_and_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, operator_loc: location, value: default_node(source, location)) ClassVariableAndWriteNode.new(source, node_id, location, flags, name, name_loc, operator_loc, value) end
#class_variable_operator_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, binary_operator_loc: location, value: default_node(source, location), binary_operator: :"")
Create a new ClassVariableOperatorWriteNode node.
# File 'lib/prism/dsl.rb', line 212
def class_variable_operator_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, binary_operator_loc: location, value: default_node(source, location), binary_operator: :"") ClassVariableOperatorWriteNode.new(source, node_id, location, flags, name, name_loc, binary_operator_loc, value, binary_operator) end
#class_variable_or_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, operator_loc: location, value: default_node(source, location))
Create a new ClassVariableOrWriteNode node.
# File 'lib/prism/dsl.rb', line 217
def class_variable_or_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, operator_loc: location, value: default_node(source, location)) ClassVariableOrWriteNode.new(source, node_id, location, flags, name, name_loc, operator_loc, value) end
#class_variable_read_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"")
Create a new ClassVariableReadNode node.
# File 'lib/prism/dsl.rb', line 222
def class_variable_read_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"") ClassVariableReadNode.new(source, node_id, location, flags, name) end
#class_variable_target_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"")
Create a new ClassVariableTargetNode node.
# File 'lib/prism/dsl.rb', line 227
def class_variable_target_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"") ClassVariableTargetNode.new(source, node_id, location, flags, name) end
#class_variable_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, value: default_node(source, location), operator_loc: location)
Create a new ClassVariableWriteNode node.
# File 'lib/prism/dsl.rb', line 232
def class_variable_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, value: default_node(source, location), operator_loc: location) ClassVariableWriteNode.new(source, node_id, location, flags, name, name_loc, value, operator_loc) end
#constant_and_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, operator_loc: location, value: default_node(source, location))
Create a new ConstantAndWriteNode node.
# File 'lib/prism/dsl.rb', line 237
def constant_and_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, operator_loc: location, value: default_node(source, location)) ConstantAndWriteNode.new(source, node_id, location, flags, name, name_loc, operator_loc, value) end
#constant_operator_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, binary_operator_loc: location, value: default_node(source, location), binary_operator: :"")
Create a new ConstantOperatorWriteNode node.
# File 'lib/prism/dsl.rb', line 242
def constant_operator_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, binary_operator_loc: location, value: default_node(source, location), binary_operator: :"") ConstantOperatorWriteNode.new(source, node_id, location, flags, name, name_loc, binary_operator_loc, value, binary_operator) end
#constant_or_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, operator_loc: location, value: default_node(source, location))
Create a new ConstantOrWriteNode node.
# File 'lib/prism/dsl.rb', line 247
def constant_or_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, operator_loc: location, value: default_node(source, location)) ConstantOrWriteNode.new(source, node_id, location, flags, name, name_loc, operator_loc, value) end
#constant_path_and_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, target: constant_path_node(source: source), operator_loc: location, value: default_node(source, location))
Create a new ConstantPathAndWriteNode node.
# File 'lib/prism/dsl.rb', line 252
def constant_path_and_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, target: constant_path_node(source: source), operator_loc: location, value: default_node(source, location)) ConstantPathAndWriteNode.new(source, node_id, location, flags, target, operator_loc, value) end
#constant_path_node(source: default_source, node_id: 0, location: default_location, flags: 0, parent: nil, name: nil, delimiter_loc: location, name_loc: location)
Create a new ConstantPathNode node.
# File 'lib/prism/dsl.rb', line 257
def constant_path_node(source: default_source, node_id: 0, location: default_location, flags: 0, parent: nil, name: nil, delimiter_loc: location, name_loc: location) ConstantPathNode.new(source, node_id, location, flags, parent, name, delimiter_loc, name_loc) end
#constant_path_operator_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, target: constant_path_node(source: source), binary_operator_loc: location, value: default_node(source, location), binary_operator: :"")
Create a new ConstantPathOperatorWriteNode node.
# File 'lib/prism/dsl.rb', line 262
def constant_path_operator_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, target: constant_path_node(source: source), binary_operator_loc: location, value: default_node(source, location), binary_operator: :"") ConstantPathOperatorWriteNode.new(source, node_id, location, flags, target, binary_operator_loc, value, binary_operator) end
#constant_path_or_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, target: constant_path_node(source: source), operator_loc: location, value: default_node(source, location))
Create a new ConstantPathOrWriteNode node.
# File 'lib/prism/dsl.rb', line 267
def constant_path_or_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, target: constant_path_node(source: source), operator_loc: location, value: default_node(source, location)) ConstantPathOrWriteNode.new(source, node_id, location, flags, target, operator_loc, value) end
#constant_path_target_node(source: default_source, node_id: 0, location: default_location, flags: 0, parent: nil, name: nil, delimiter_loc: location, name_loc: location)
Create a new ConstantPathTargetNode node.
# File 'lib/prism/dsl.rb', line 272
def constant_path_target_node(source: default_source, node_id: 0, location: default_location, flags: 0, parent: nil, name: nil, delimiter_loc: location, name_loc: location) ConstantPathTargetNode.new(source, node_id, location, flags, parent, name, delimiter_loc, name_loc) end
#constant_path_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, target: constant_path_node(source: source), operator_loc: location, value: default_node(source, location))
Create a new ConstantPathWriteNode node.
# File 'lib/prism/dsl.rb', line 277
def constant_path_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, target: constant_path_node(source: source), operator_loc: location, value: default_node(source, location)) ConstantPathWriteNode.new(source, node_id, location, flags, target, operator_loc, value) end
#constant_read_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"")
Create a new ConstantReadNode node.
# File 'lib/prism/dsl.rb', line 282
def constant_read_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"") ConstantReadNode.new(source, node_id, location, flags, name) end
#constant_target_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"")
Create a new ConstantTargetNode node.
# File 'lib/prism/dsl.rb', line 287
def constant_target_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"") ConstantTargetNode.new(source, node_id, location, flags, name) end
#constant_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, value: default_node(source, location), operator_loc: location)
Create a new ConstantWriteNode node.
# File 'lib/prism/dsl.rb', line 292
def constant_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, value: default_node(source, location), operator_loc: location) ConstantWriteNode.new(source, node_id, location, flags, name, name_loc, value, operator_loc) end
#def_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, receiver: nil, parameters: nil, body: nil, locals: [], def_keyword_loc: location, operator_loc: nil, lparen_loc: nil, rparen_loc: nil, equal_loc: nil, end_keyword_loc: nil)
Create a new DefNode node.
# File 'lib/prism/dsl.rb', line 297
def def_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, receiver: nil, parameters: nil, body: nil, locals: [], def_keyword_loc: location, operator_loc: nil, lparen_loc: nil, rparen_loc: nil, equal_loc: nil, end_keyword_loc: nil) DefNode.new(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
#default_location (private)
The default location object that gets attached to nodes if no location is specified, which uses the given source.
# File 'lib/prism/dsl.rb', line 979
def default_location Location.new(default_source, 0, 0) end
#default_node(source, location) (private)
The default node that gets attached to nodes if no node is specified for a required node field.
#default_source (private)
The default source object that gets attached to nodes and locations if no source is specified.
#defined_node(source: default_source, node_id: 0, location: default_location, flags: 0, lparen_loc: nil, value: default_node(source, location), rparen_loc: nil, keyword_loc: location)
Create a new DefinedNode node.
# File 'lib/prism/dsl.rb', line 302
def defined_node(source: default_source, node_id: 0, location: default_location, flags: 0, lparen_loc: nil, value: default_node(source, location), rparen_loc: nil, keyword_loc: location) DefinedNode.new(source, node_id, location, flags, lparen_loc, value, rparen_loc, keyword_loc) end
#else_node(source: default_source, node_id: 0, location: default_location, flags: 0, else_keyword_loc: location, statements: nil, end_keyword_loc: nil)
Create a new ElseNode node.
# File 'lib/prism/dsl.rb', line 307
def else_node(source: default_source, node_id: 0, location: default_location, flags: 0, else_keyword_loc: location, statements: nil, end_keyword_loc: nil) ElseNode.new(source, node_id, location, flags, else_keyword_loc, statements, end_keyword_loc) end
#embedded_statements_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: location, statements: nil, closing_loc: location)
Create a new EmbeddedStatementsNode node.
# File 'lib/prism/dsl.rb', line 312
def (source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: location, statements: nil, closing_loc: location) EmbeddedStatementsNode.new(source, node_id, location, flags, opening_loc, statements, closing_loc) end
#embedded_variable_node(source: default_source, node_id: 0, location: default_location, flags: 0, operator_loc: location, variable: default_node(source, location))
Create a new EmbeddedVariableNode node.
# File 'lib/prism/dsl.rb', line 317
def (source: default_source, node_id: 0, location: default_location, flags: 0, operator_loc: location, variable: default_node(source, location)) EmbeddedVariableNode.new(source, node_id, location, flags, operator_loc, variable) end
#encoding_flag(name)
Retrieve the value of one of the EncodingFlags flags.
# File 'lib/prism/dsl.rb', line 860
def encoding_flag(name) case name when :forced_utf8_encoding then EncodingFlags::FORCED_UTF8_ENCODING when :forced_binary_encoding then EncodingFlags::FORCED_BINARY_ENCODING else Kernel.raise ArgumentError, "invalid EncodingFlags flag: #{name.inspect}" end end
#ensure_node(source: default_source, node_id: 0, location: default_location, flags: 0, ensure_keyword_loc: location, statements: nil, end_keyword_loc: location)
Create a new EnsureNode node.
# File 'lib/prism/dsl.rb', line 322
def ensure_node(source: default_source, node_id: 0, location: default_location, flags: 0, ensure_keyword_loc: location, statements: nil, end_keyword_loc: location) EnsureNode.new(source, node_id, location, flags, ensure_keyword_loc, statements, end_keyword_loc) end
#false_node(source: default_source, node_id: 0, location: default_location, flags: 0)
Create a new FalseNode node.
# File 'lib/prism/dsl.rb', line 327
def false_node(source: default_source, node_id: 0, location: default_location, flags: 0) FalseNode.new(source, node_id, location, flags) end
#find_pattern_node(source: default_source, node_id: 0, location: default_location, flags: 0, constant: nil, left: default_node(source, location), requireds: [], right: default_node(source, location), opening_loc: nil, closing_loc: nil)
Create a new FindPatternNode node.
# File 'lib/prism/dsl.rb', line 332
def find_pattern_node(source: default_source, node_id: 0, location: default_location, flags: 0, constant: nil, left: default_node(source, location), requireds: [], right: default_node(source, location), opening_loc: nil, closing_loc: nil) FindPatternNode.new(source, node_id, location, flags, constant, left, requireds, right, opening_loc, closing_loc) end
#flip_flop_node(source: default_source, node_id: 0, location: default_location, flags: 0, left: nil, right: nil, operator_loc: location)
Create a new FlipFlopNode node.
# File 'lib/prism/dsl.rb', line 337
def flip_flop_node(source: default_source, node_id: 0, location: default_location, flags: 0, left: nil, right: nil, operator_loc: location) FlipFlopNode.new(source, node_id, location, flags, left, right, operator_loc) end
#float_node(source: default_source, node_id: 0, location: default_location, flags: 0, value: 0.0)
Create a new FloatNode node.
# File 'lib/prism/dsl.rb', line 342
def float_node(source: default_source, node_id: 0, location: default_location, flags: 0, value: 0.0) FloatNode.new(source, node_id, location, flags, value) end
#for_node(source: default_source, node_id: 0, location: default_location, flags: 0, index: default_node(source, location), collection: default_node(source, location), statements: nil, for_keyword_loc: location, in_keyword_loc: location, do_keyword_loc: nil, end_keyword_loc: location)
Create a new ForNode node.
# File 'lib/prism/dsl.rb', line 347
def for_node(source: default_source, node_id: 0, location: default_location, flags: 0, index: default_node(source, location), collection: default_node(source, location), statements: nil, for_keyword_loc: location, in_keyword_loc: location, do_keyword_loc: nil, end_keyword_loc: location) ForNode.new(source, node_id, location, flags, index, collection, statements, for_keyword_loc, in_keyword_loc, do_keyword_loc, end_keyword_loc) end
#forwarding_arguments_node(source: default_source, node_id: 0, location: default_location, flags: 0)
Create a new ForwardingArgumentsNode node.
# File 'lib/prism/dsl.rb', line 352
def forwarding_arguments_node(source: default_source, node_id: 0, location: default_location, flags: 0) ForwardingArgumentsNode.new(source, node_id, location, flags) end
#forwarding_parameter_node(source: default_source, node_id: 0, location: default_location, flags: 0)
Create a new ForwardingParameterNode node.
# File 'lib/prism/dsl.rb', line 357
def forwarding_parameter_node(source: default_source, node_id: 0, location: default_location, flags: 0) ForwardingParameterNode.new(source, node_id, location, flags) end
#forwarding_super_node(source: default_source, node_id: 0, location: default_location, flags: 0, block: nil)
Create a new ForwardingSuperNode node.
# File 'lib/prism/dsl.rb', line 362
def forwarding_super_node(source: default_source, node_id: 0, location: default_location, flags: 0, block: nil) ForwardingSuperNode.new(source, node_id, location, flags, block) end
#global_variable_and_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, operator_loc: location, value: default_node(source, location))
Create a new GlobalVariableAndWriteNode node.
# File 'lib/prism/dsl.rb', line 367
def global_variable_and_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, operator_loc: location, value: default_node(source, location)) GlobalVariableAndWriteNode.new(source, node_id, location, flags, name, name_loc, operator_loc, value) end
#global_variable_operator_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, binary_operator_loc: location, value: default_node(source, location), binary_operator: :"")
Create a new GlobalVariableOperatorWriteNode node.
# File 'lib/prism/dsl.rb', line 372
def global_variable_operator_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, binary_operator_loc: location, value: default_node(source, location), binary_operator: :"") GlobalVariableOperatorWriteNode.new(source, node_id, location, flags, name, name_loc, binary_operator_loc, value, binary_operator) end
#global_variable_or_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, operator_loc: location, value: default_node(source, location))
Create a new GlobalVariableOrWriteNode node.
# File 'lib/prism/dsl.rb', line 377
def global_variable_or_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, operator_loc: location, value: default_node(source, location)) GlobalVariableOrWriteNode.new(source, node_id, location, flags, name, name_loc, operator_loc, value) end
#global_variable_read_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"")
Create a new GlobalVariableReadNode node.
# File 'lib/prism/dsl.rb', line 382
def global_variable_read_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"") GlobalVariableReadNode.new(source, node_id, location, flags, name) end
#global_variable_target_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"")
Create a new GlobalVariableTargetNode node.
# File 'lib/prism/dsl.rb', line 387
def global_variable_target_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"") GlobalVariableTargetNode.new(source, node_id, location, flags, name) end
#global_variable_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, value: default_node(source, location), operator_loc: location)
Create a new GlobalVariableWriteNode node.
# File 'lib/prism/dsl.rb', line 392
def global_variable_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, value: default_node(source, location), operator_loc: location) GlobalVariableWriteNode.new(source, node_id, location, flags, name, name_loc, value, operator_loc) end
#hash_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: location, elements: [], closing_loc: location)
Create a new HashNode node.
# File 'lib/prism/dsl.rb', line 397
def hash_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: location, elements: [], closing_loc: location) HashNode.new(source, node_id, location, flags, opening_loc, elements, closing_loc) end
#hash_pattern_node(source: default_source, node_id: 0, location: default_location, flags: 0, constant: nil, elements: [], rest: nil, opening_loc: nil, closing_loc: nil)
Create a new HashPatternNode node.
# File 'lib/prism/dsl.rb', line 402
def hash_pattern_node(source: default_source, node_id: 0, location: default_location, flags: 0, constant: nil, elements: [], rest: nil, opening_loc: nil, closing_loc: nil) HashPatternNode.new(source, node_id, location, flags, constant, elements, rest, opening_loc, closing_loc) end
#if_node(source: default_source, node_id: 0, location: default_location, flags: 0, if_keyword_loc: nil, predicate: default_node(source, location), then_keyword_loc: nil, statements: nil, consequent: nil, end_keyword_loc: nil)
Create a new IfNode node.
# File 'lib/prism/dsl.rb', line 407
def if_node(source: default_source, node_id: 0, location: default_location, flags: 0, if_keyword_loc: nil, predicate: default_node(source, location), then_keyword_loc: nil, statements: nil, consequent: nil, end_keyword_loc: nil) IfNode.new(source, node_id, location, flags, if_keyword_loc, predicate, then_keyword_loc, statements, consequent, end_keyword_loc) end
#imaginary_node(source: default_source, node_id: 0, location: default_location, flags: 0, numeric: float_node(source: source))
Create a new ImaginaryNode node.
# File 'lib/prism/dsl.rb', line 412
def imaginary_node(source: default_source, node_id: 0, location: default_location, flags: 0, numeric: float_node(source: source)) ImaginaryNode.new(source, node_id, location, flags, numeric) end
#implicit_node(source: default_source, node_id: 0, location: default_location, flags: 0, value: default_node(source, location))
Create a new ImplicitNode node.
# File 'lib/prism/dsl.rb', line 417
def implicit_node(source: default_source, node_id: 0, location: default_location, flags: 0, value: default_node(source, location)) ImplicitNode.new(source, node_id, location, flags, value) end
#implicit_rest_node(source: default_source, node_id: 0, location: default_location, flags: 0)
Create a new ImplicitRestNode node.
# File 'lib/prism/dsl.rb', line 422
def implicit_rest_node(source: default_source, node_id: 0, location: default_location, flags: 0) ImplicitRestNode.new(source, node_id, location, flags) end
#in_node(source: default_source, node_id: 0, location: default_location, flags: 0, pattern: default_node(source, location), statements: nil, in_loc: location, then_loc: nil)
Create a new InNode node.
# File 'lib/prism/dsl.rb', line 427
def in_node(source: default_source, node_id: 0, location: default_location, flags: 0, pattern: default_node(source, location), statements: nil, in_loc: location, then_loc: nil) InNode.new(source, node_id, location, flags, pattern, statements, in_loc, then_loc) end
#index_and_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, receiver: nil, call_operator_loc: nil, opening_loc: location, arguments: nil, closing_loc: location, block: nil, operator_loc: location, value: default_node(source, location))
Create a new IndexAndWriteNode node.
# File 'lib/prism/dsl.rb', line 432
def index_and_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, receiver: nil, call_operator_loc: nil, opening_loc: location, arguments: nil, closing_loc: location, block: nil, operator_loc: location, value: default_node(source, location)) IndexAndWriteNode.new(source, node_id, location, flags, receiver, call_operator_loc, opening_loc, arguments, closing_loc, block, operator_loc, value) end
#index_operator_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, receiver: nil, call_operator_loc: nil, opening_loc: location, arguments: nil, closing_loc: location, block: nil, binary_operator: :"", binary_operator_loc: location, value: default_node(source, location))
Create a new IndexOperatorWriteNode node.
# File 'lib/prism/dsl.rb', line 437
def index_operator_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, receiver: nil, call_operator_loc: nil, opening_loc: location, arguments: nil, closing_loc: location, block: nil, binary_operator: :"", binary_operator_loc: location, value: default_node(source, location)) IndexOperatorWriteNode.new(source, node_id, location, flags, receiver, call_operator_loc, opening_loc, arguments, closing_loc, block, binary_operator, binary_operator_loc, value) end
#index_or_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, receiver: nil, call_operator_loc: nil, opening_loc: location, arguments: nil, closing_loc: location, block: nil, operator_loc: location, value: default_node(source, location))
Create a new IndexOrWriteNode node.
# File 'lib/prism/dsl.rb', line 442
def index_or_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, receiver: nil, call_operator_loc: nil, opening_loc: location, arguments: nil, closing_loc: location, block: nil, operator_loc: location, value: default_node(source, location)) IndexOrWriteNode.new(source, node_id, location, flags, receiver, call_operator_loc, opening_loc, arguments, closing_loc, block, operator_loc, value) end
#index_target_node(source: default_source, node_id: 0, location: default_location, flags: 0, receiver: default_node(source, location), opening_loc: location, arguments: nil, closing_loc: location, block: nil)
Create a new IndexTargetNode node.
# File 'lib/prism/dsl.rb', line 447
def index_target_node(source: default_source, node_id: 0, location: default_location, flags: 0, receiver: default_node(source, location), opening_loc: location, arguments: nil, closing_loc: location, block: nil) IndexTargetNode.new(source, node_id, location, flags, receiver, opening_loc, arguments, closing_loc, block) end
#instance_variable_and_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, operator_loc: location, value: default_node(source, location))
Create a new InstanceVariableAndWriteNode node.
# File 'lib/prism/dsl.rb', line 452
def instance_variable_and_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, operator_loc: location, value: default_node(source, location)) InstanceVariableAndWriteNode.new(source, node_id, location, flags, name, name_loc, operator_loc, value) end
#instance_variable_operator_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, binary_operator_loc: location, value: default_node(source, location), binary_operator: :"")
Create a new InstanceVariableOperatorWriteNode node.
# File 'lib/prism/dsl.rb', line 457
def instance_variable_operator_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, binary_operator_loc: location, value: default_node(source, location), binary_operator: :"") InstanceVariableOperatorWriteNode.new(source, node_id, location, flags, name, name_loc, binary_operator_loc, value, binary_operator) end
#instance_variable_or_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, operator_loc: location, value: default_node(source, location))
Create a new InstanceVariableOrWriteNode node.
# File 'lib/prism/dsl.rb', line 462
def instance_variable_or_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, operator_loc: location, value: default_node(source, location)) InstanceVariableOrWriteNode.new(source, node_id, location, flags, name, name_loc, operator_loc, value) end
#instance_variable_read_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"")
Create a new InstanceVariableReadNode node.
# File 'lib/prism/dsl.rb', line 467
def instance_variable_read_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"") InstanceVariableReadNode.new(source, node_id, location, flags, name) end
#instance_variable_target_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"")
Create a new InstanceVariableTargetNode node.
# File 'lib/prism/dsl.rb', line 472
def instance_variable_target_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"") InstanceVariableTargetNode.new(source, node_id, location, flags, name) end
#instance_variable_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, value: default_node(source, location), operator_loc: location)
Create a new InstanceVariableWriteNode node.
# File 'lib/prism/dsl.rb', line 477
def instance_variable_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, value: default_node(source, location), operator_loc: location) InstanceVariableWriteNode.new(source, node_id, location, flags, name, name_loc, value, operator_loc) end
#integer_base_flag(name)
Retrieve the value of one of the IntegerBaseFlags flags.
# File 'lib/prism/dsl.rb', line 869
def integer_base_flag(name) case name when :binary then IntegerBaseFlags::BINARY when :decimal then IntegerBaseFlags::DECIMAL when :octal then IntegerBaseFlags::OCTAL when :hexadecimal then IntegerBaseFlags::HEXADECIMAL else Kernel.raise ArgumentError, "invalid IntegerBaseFlags flag: #{name.inspect}" end end
#integer_node(source: default_source, node_id: 0, location: default_location, flags: 0, value: 0)
Create a new IntegerNode node.
# File 'lib/prism/dsl.rb', line 482
def integer_node(source: default_source, node_id: 0, location: default_location, flags: 0, value: 0) IntegerNode.new(source, node_id, location, flags, value) end
#interpolated_match_last_line_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: location, parts: [], closing_loc: location)
Create a new InterpolatedMatchLastLineNode node.
# File 'lib/prism/dsl.rb', line 487
def interpolated_match_last_line_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: location, parts: [], closing_loc: location) InterpolatedMatchLastLineNode.new(source, node_id, location, flags, opening_loc, parts, closing_loc) end
#interpolated_regular_expression_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: location, parts: [], closing_loc: location)
Create a new InterpolatedRegularExpressionNode node.
# File 'lib/prism/dsl.rb', line 492
def interpolated_regular_expression_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: location, parts: [], closing_loc: location) InterpolatedRegularExpressionNode.new(source, node_id, location, flags, opening_loc, parts, closing_loc) end
#interpolated_string_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: nil, parts: [], closing_loc: nil)
Create a new InterpolatedStringNode node.
# File 'lib/prism/dsl.rb', line 497
def interpolated_string_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: nil, parts: [], closing_loc: nil) InterpolatedStringNode.new(source, node_id, location, flags, opening_loc, parts, closing_loc) end
#interpolated_string_node_flag(name)
Retrieve the value of one of the InterpolatedStringNodeFlags flags.
# File 'lib/prism/dsl.rb', line 880
def interpolated_string_node_flag(name) case name when :frozen then InterpolatedStringNodeFlags::FROZEN when :mutable then InterpolatedStringNodeFlags::MUTABLE else Kernel.raise ArgumentError, "invalid InterpolatedStringNodeFlags flag: #{name.inspect}" end end
#interpolated_symbol_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: nil, parts: [], closing_loc: nil)
Create a new InterpolatedSymbolNode node.
# File 'lib/prism/dsl.rb', line 502
def interpolated_symbol_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: nil, parts: [], closing_loc: nil) InterpolatedSymbolNode.new(source, node_id, location, flags, opening_loc, parts, closing_loc) end
#interpolated_x_string_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: location, parts: [], closing_loc: location)
Create a new InterpolatedXStringNode node.
# File 'lib/prism/dsl.rb', line 507
def interpolated_x_string_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: location, parts: [], closing_loc: location) InterpolatedXStringNode.new(source, node_id, location, flags, opening_loc, parts, closing_loc) end
#it_local_variable_read_node(source: default_source, node_id: 0, location: default_location, flags: 0)
Create a new ItLocalVariableReadNode node.
# File 'lib/prism/dsl.rb', line 512
def it_local_variable_read_node(source: default_source, node_id: 0, location: default_location, flags: 0) ItLocalVariableReadNode.new(source, node_id, location, flags) end
#it_parameters_node(source: default_source, node_id: 0, location: default_location, flags: 0)
Create a new ItParametersNode node.
# File 'lib/prism/dsl.rb', line 517
def it_parameters_node(source: default_source, node_id: 0, location: default_location, flags: 0) ItParametersNode.new(source, node_id, location, flags) end
#keyword_hash_node(source: default_source, node_id: 0, location: default_location, flags: 0, elements: [])
Create a new KeywordHashNode node.
# File 'lib/prism/dsl.rb', line 522
def keyword_hash_node(source: default_source, node_id: 0, location: default_location, flags: 0, elements: []) KeywordHashNode.new(source, node_id, location, flags, elements) end
#keyword_hash_node_flag(name)
Retrieve the value of one of the KeywordHashNodeFlags flags.
# File 'lib/prism/dsl.rb', line 889
def keyword_hash_node_flag(name) case name when :symbol_keys then KeywordHashNodeFlags::SYMBOL_KEYS else Kernel.raise ArgumentError, "invalid KeywordHashNodeFlags flag: #{name.inspect}" end end
#keyword_rest_parameter_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: nil, name_loc: nil, operator_loc: location)
Create a new KeywordRestParameterNode node.
# File 'lib/prism/dsl.rb', line 527
def keyword_rest_parameter_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: nil, name_loc: nil, operator_loc: location) KeywordRestParameterNode.new(source, node_id, location, flags, name, name_loc, operator_loc) end
#lambda_node(source: default_source, node_id: 0, location: default_location, flags: 0, locals: [], operator_loc: location, opening_loc: location, closing_loc: location, parameters: nil, body: nil)
Create a new LambdaNode node.
# File 'lib/prism/dsl.rb', line 532
def lambda_node(source: default_source, node_id: 0, location: default_location, flags: 0, locals: [], operator_loc: location, opening_loc: location, closing_loc: location, parameters: nil, body: nil) LambdaNode.new(source, node_id, location, flags, locals, operator_loc, opening_loc, closing_loc, parameters, body) end
#local_variable_and_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name_loc: location, operator_loc: location, value: default_node(source, location), name: :"", depth: 0)
Create a new LocalVariableAndWriteNode node.
# File 'lib/prism/dsl.rb', line 537
def local_variable_and_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name_loc: location, operator_loc: location, value: default_node(source, location), name: :"", depth: 0) LocalVariableAndWriteNode.new(source, node_id, location, flags, name_loc, operator_loc, value, name, depth) end
#local_variable_operator_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name_loc: location, binary_operator_loc: location, value: default_node(source, location), name: :"", binary_operator: :"", depth: 0)
Create a new LocalVariableOperatorWriteNode node.
# File 'lib/prism/dsl.rb', line 542
def local_variable_operator_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name_loc: location, binary_operator_loc: location, value: default_node(source, location), name: :"", binary_operator: :"", depth: 0) LocalVariableOperatorWriteNode.new(source, node_id, location, flags, name_loc, binary_operator_loc, value, name, binary_operator, depth) end
#local_variable_or_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name_loc: location, operator_loc: location, value: default_node(source, location), name: :"", depth: 0)
Create a new LocalVariableOrWriteNode node.
# File 'lib/prism/dsl.rb', line 547
def local_variable_or_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name_loc: location, operator_loc: location, value: default_node(source, location), name: :"", depth: 0) LocalVariableOrWriteNode.new(source, node_id, location, flags, name_loc, operator_loc, value, name, depth) end
#local_variable_read_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", depth: 0)
Create a new LocalVariableReadNode node.
# File 'lib/prism/dsl.rb', line 552
def local_variable_read_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", depth: 0) LocalVariableReadNode.new(source, node_id, location, flags, name, depth) end
#local_variable_target_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", depth: 0)
Create a new LocalVariableTargetNode node.
# File 'lib/prism/dsl.rb', line 557
def local_variable_target_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", depth: 0) LocalVariableTargetNode.new(source, node_id, location, flags, name, depth) end
#local_variable_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", depth: 0, name_loc: location, value: default_node(source, location), operator_loc: location)
Create a new LocalVariableWriteNode node.
# File 'lib/prism/dsl.rb', line 562
def local_variable_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", depth: 0, name_loc: location, value: default_node(source, location), operator_loc: location) LocalVariableWriteNode.new(source, node_id, location, flags, name, depth, name_loc, value, operator_loc) end
#location(source: default_source, start_offset: 0, length: 0)
Create a new Location object.
# File 'lib/prism/dsl.rb', line 72
def location(source: default_source, start_offset: 0, length: 0) Location.new(source, start_offset, length) end
#loop_flag(name)
Retrieve the value of one of the LoopFlags flags.
# File 'lib/prism/dsl.rb', line 897
def loop_flag(name) case name when :begin_modifier then LoopFlags::BEGIN_MODIFIER else Kernel.raise ArgumentError, "invalid LoopFlags flag: #{name.inspect}" end end
#match_last_line_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: location, content_loc: location, closing_loc: location, unescaped: "")
Create a new MatchLastLineNode node.
# File 'lib/prism/dsl.rb', line 567
def match_last_line_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: location, content_loc: location, closing_loc: location, unescaped: "") MatchLastLineNode.new(source, node_id, location, flags, opening_loc, content_loc, closing_loc, unescaped) end
#match_predicate_node(source: default_source, node_id: 0, location: default_location, flags: 0, value: default_node(source, location), pattern: default_node(source, location), operator_loc: location)
Create a new MatchPredicateNode node.
# File 'lib/prism/dsl.rb', line 572
def match_predicate_node(source: default_source, node_id: 0, location: default_location, flags: 0, value: default_node(source, location), pattern: default_node(source, location), operator_loc: location) MatchPredicateNode.new(source, node_id, location, flags, value, pattern, operator_loc) end
#match_required_node(source: default_source, node_id: 0, location: default_location, flags: 0, value: default_node(source, location), pattern: default_node(source, location), operator_loc: location)
Create a new MatchRequiredNode node.
# File 'lib/prism/dsl.rb', line 577
def match_required_node(source: default_source, node_id: 0, location: default_location, flags: 0, value: default_node(source, location), pattern: default_node(source, location), operator_loc: location) MatchRequiredNode.new(source, node_id, location, flags, value, pattern, operator_loc) end
#match_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, call: call_node(source: source), targets: [])
Create a new MatchWriteNode node.
# File 'lib/prism/dsl.rb', line 582
def match_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, call: call_node(source: source), targets: []) MatchWriteNode.new(source, node_id, location, flags, call, targets) end
#missing_node(source: default_source, node_id: 0, location: default_location, flags: 0)
Create a new MissingNode node.
# File 'lib/prism/dsl.rb', line 587
def missing_node(source: default_source, node_id: 0, location: default_location, flags: 0) MissingNode.new(source, node_id, location, flags) end
#module_node(source: default_source, node_id: 0, location: default_location, flags: 0, locals: [], module_keyword_loc: location, constant_path: default_node(source, location), body: nil, end_keyword_loc: location, name: :"")
Create a new ModuleNode node.
# File 'lib/prism/dsl.rb', line 592
def module_node(source: default_source, node_id: 0, location: default_location, flags: 0, locals: [], module_keyword_loc: location, constant_path: default_node(source, location), body: nil, end_keyword_loc: location, name: :"") ModuleNode.new(source, node_id, location, flags, locals, module_keyword_loc, constant_path, body, end_keyword_loc, name) end
#multi_target_node(source: default_source, node_id: 0, location: default_location, flags: 0, lefts: [], rest: nil, rights: [], lparen_loc: nil, rparen_loc: nil)
Create a new MultiTargetNode node.
# File 'lib/prism/dsl.rb', line 597
def multi_target_node(source: default_source, node_id: 0, location: default_location, flags: 0, lefts: [], rest: nil, rights: [], lparen_loc: nil, rparen_loc: nil) MultiTargetNode.new(source, node_id, location, flags, lefts, rest, rights, lparen_loc, rparen_loc) end
#multi_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, lefts: [], rest: nil, rights: [], lparen_loc: nil, rparen_loc: nil, operator_loc: location, value: default_node(source, location))
Create a new MultiWriteNode node.
# File 'lib/prism/dsl.rb', line 602
def multi_write_node(source: default_source, node_id: 0, location: default_location, flags: 0, lefts: [], rest: nil, rights: [], lparen_loc: nil, rparen_loc: nil, operator_loc: location, value: default_node(source, location)) MultiWriteNode.new(source, node_id, location, flags, lefts, rest, rights, lparen_loc, rparen_loc, operator_loc, value) end
#next_node(source: default_source, node_id: 0, location: default_location, flags: 0, arguments: nil, keyword_loc: location)
Create a new NextNode node.
# File 'lib/prism/dsl.rb', line 607
def next_node(source: default_source, node_id: 0, location: default_location, flags: 0, arguments: nil, keyword_loc: location) NextNode.new(source, node_id, location, flags, arguments, keyword_loc) end
#nil_node(source: default_source, node_id: 0, location: default_location, flags: 0)
Create a new NilNode node.
# File 'lib/prism/dsl.rb', line 612
def nil_node(source: default_source, node_id: 0, location: default_location, flags: 0) NilNode.new(source, node_id, location, flags) end
#no_keywords_parameter_node(source: default_source, node_id: 0, location: default_location, flags: 0, operator_loc: location, keyword_loc: location)
Create a new NoKeywordsParameterNode node.
# File 'lib/prism/dsl.rb', line 617
def no_keywords_parameter_node(source: default_source, node_id: 0, location: default_location, flags: 0, operator_loc: location, keyword_loc: location) NoKeywordsParameterNode.new(source, node_id, location, flags, operator_loc, keyword_loc) end
#numbered_parameters_node(source: default_source, node_id: 0, location: default_location, flags: 0, maximum: 0)
Create a new NumberedParametersNode node.
# File 'lib/prism/dsl.rb', line 622
def numbered_parameters_node(source: default_source, node_id: 0, location: default_location, flags: 0, maximum: 0) NumberedParametersNode.new(source, node_id, location, flags, maximum) end
#numbered_reference_read_node(source: default_source, node_id: 0, location: default_location, flags: 0, number: 0)
Create a new NumberedReferenceReadNode node.
# File 'lib/prism/dsl.rb', line 627
def numbered_reference_read_node(source: default_source, node_id: 0, location: default_location, flags: 0, number: 0) NumberedReferenceReadNode.new(source, node_id, location, flags, number) end
#optional_keyword_parameter_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, value: default_node(source, location))
Create a new OptionalKeywordParameterNode node.
# File 'lib/prism/dsl.rb', line 632
def optional_keyword_parameter_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, value: default_node(source, location)) OptionalKeywordParameterNode.new(source, node_id, location, flags, name, name_loc, value) end
#optional_parameter_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, operator_loc: location, value: default_node(source, location))
Create a new OptionalParameterNode node.
# File 'lib/prism/dsl.rb', line 637
def optional_parameter_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location, operator_loc: location, value: default_node(source, location)) OptionalParameterNode.new(source, node_id, location, flags, name, name_loc, operator_loc, value) end
#or_node(source: default_source, node_id: 0, location: default_location, flags: 0, left: default_node(source, location), right: default_node(source, location), operator_loc: location)
Create a new OrNode node.
# File 'lib/prism/dsl.rb', line 642
def or_node(source: default_source, node_id: 0, location: default_location, flags: 0, left: default_node(source, location), right: default_node(source, location), operator_loc: location) OrNode.new(source, node_id, location, flags, left, right, operator_loc) end
#parameter_flag(name)
Retrieve the value of one of the ParameterFlags flags.
# File 'lib/prism/dsl.rb', line 905
def parameter_flag(name) case name when :repeated_parameter then ParameterFlags::REPEATED_PARAMETER else Kernel.raise ArgumentError, "invalid ParameterFlags flag: #{name.inspect}" end end
#parameters_node(source: default_source, node_id: 0, location: default_location, flags: 0, requireds: [], optionals: [], rest: nil, posts: [], keywords: [], keyword_rest: nil, block: nil)
Create a new ParametersNode node.
# File 'lib/prism/dsl.rb', line 647
def parameters_node(source: default_source, node_id: 0, location: default_location, flags: 0, requireds: [], optionals: [], rest: nil, posts: [], keywords: [], keyword_rest: nil, block: nil) ParametersNode.new(source, node_id, location, flags, requireds, optionals, rest, posts, keywords, keyword_rest, block) end
#parentheses_node(source: default_source, node_id: 0, location: default_location, flags: 0, body: nil, opening_loc: location, closing_loc: location)
Create a new ParenthesesNode node.
# File 'lib/prism/dsl.rb', line 652
def parentheses_node(source: default_source, node_id: 0, location: default_location, flags: 0, body: nil, opening_loc: location, closing_loc: location) ParenthesesNode.new(source, node_id, location, flags, body, opening_loc, closing_loc) end
#pinned_expression_node(source: default_source, node_id: 0, location: default_location, flags: 0, expression: default_node(source, location), operator_loc: location, lparen_loc: location, rparen_loc: location)
Create a new PinnedExpressionNode node.
# File 'lib/prism/dsl.rb', line 657
def pinned_expression_node(source: default_source, node_id: 0, location: default_location, flags: 0, expression: default_node(source, location), operator_loc: location, lparen_loc: location, rparen_loc: location) PinnedExpressionNode.new(source, node_id, location, flags, expression, operator_loc, lparen_loc, rparen_loc) end
#pinned_variable_node(source: default_source, node_id: 0, location: default_location, flags: 0, variable: default_node(source, location), operator_loc: location)
Create a new PinnedVariableNode node.
# File 'lib/prism/dsl.rb', line 662
def pinned_variable_node(source: default_source, node_id: 0, location: default_location, flags: 0, variable: default_node(source, location), operator_loc: location) PinnedVariableNode.new(source, node_id, location, flags, variable, operator_loc) end
#post_execution_node(source: default_source, node_id: 0, location: default_location, flags: 0, statements: nil, keyword_loc: location, opening_loc: location, closing_loc: location)
Create a new PostExecutionNode node.
# File 'lib/prism/dsl.rb', line 667
def post_execution_node(source: default_source, node_id: 0, location: default_location, flags: 0, statements: nil, keyword_loc: location, opening_loc: location, closing_loc: location) PostExecutionNode.new(source, node_id, location, flags, statements, keyword_loc, opening_loc, closing_loc) end
#pre_execution_node(source: default_source, node_id: 0, location: default_location, flags: 0, statements: nil, keyword_loc: location, opening_loc: location, closing_loc: location)
Create a new PreExecutionNode node.
# File 'lib/prism/dsl.rb', line 672
def pre_execution_node(source: default_source, node_id: 0, location: default_location, flags: 0, statements: nil, keyword_loc: location, opening_loc: location, closing_loc: location) PreExecutionNode.new(source, node_id, location, flags, statements, keyword_loc, opening_loc, closing_loc) end
#program_node(source: default_source, node_id: 0, location: default_location, flags: 0, locals: [], statements: statements_node(source: source))
Create a new ProgramNode node.
# File 'lib/prism/dsl.rb', line 677
def program_node(source: default_source, node_id: 0, location: default_location, flags: 0, locals: [], statements: statements_node(source: source)) ProgramNode.new(source, node_id, location, flags, locals, statements) end
#range_flag(name)
Retrieve the value of one of the RangeFlags flags.
# File 'lib/prism/dsl.rb', line 913
def range_flag(name) case name when :exclude_end then RangeFlags::EXCLUDE_END else Kernel.raise ArgumentError, "invalid RangeFlags flag: #{name.inspect}" end end
#range_node(source: default_source, node_id: 0, location: default_location, flags: 0, left: nil, right: nil, operator_loc: location)
Create a new RangeNode node.
# File 'lib/prism/dsl.rb', line 682
def range_node(source: default_source, node_id: 0, location: default_location, flags: 0, left: nil, right: nil, operator_loc: location) RangeNode.new(source, node_id, location, flags, left, right, operator_loc) end
#rational_node(source: default_source, node_id: 0, location: default_location, flags: 0, numerator: 0, denominator: 0)
Create a new RationalNode node.
# File 'lib/prism/dsl.rb', line 687
def rational_node(source: default_source, node_id: 0, location: default_location, flags: 0, numerator: 0, denominator: 0) RationalNode.new(source, node_id, location, flags, numerator, denominator) end
#redo_node(source: default_source, node_id: 0, location: default_location, flags: 0)
Create a new RedoNode node.
# File 'lib/prism/dsl.rb', line 692
def redo_node(source: default_source, node_id: 0, location: default_location, flags: 0) RedoNode.new(source, node_id, location, flags) end
#regular_expression_flag(name)
Retrieve the value of one of the RegularExpressionFlags flags.
# File 'lib/prism/dsl.rb', line 921
def regular_expression_flag(name) case name when :ignore_case then RegularExpressionFlags::IGNORE_CASE when :extended then RegularExpressionFlags::EXTENDED when :multi_line then RegularExpressionFlags::MULTI_LINE when :once then RegularExpressionFlags::ONCE when :euc_jp then RegularExpressionFlags::EUC_JP when :ascii_8bit then RegularExpressionFlags::ASCII_8BIT when :windows_31j then RegularExpressionFlags::WINDOWS_31J when :utf_8 then RegularExpressionFlags::UTF_8 when :forced_utf8_encoding then RegularExpressionFlags::FORCED_UTF8_ENCODING when :forced_binary_encoding then RegularExpressionFlags::FORCED_BINARY_ENCODING when :forced_us_ascii_encoding then RegularExpressionFlags::FORCED_US_ASCII_ENCODING else Kernel.raise ArgumentError, "invalid RegularExpressionFlags flag: #{name.inspect}" end end
#regular_expression_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: location, content_loc: location, closing_loc: location, unescaped: "")
Create a new RegularExpressionNode node.
# File 'lib/prism/dsl.rb', line 697
def regular_expression_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: location, content_loc: location, closing_loc: location, unescaped: "") RegularExpressionNode.new(source, node_id, location, flags, opening_loc, content_loc, closing_loc, unescaped) end
#required_keyword_parameter_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location)
Create a new RequiredKeywordParameterNode node.
# File 'lib/prism/dsl.rb', line 702
def required_keyword_parameter_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"", name_loc: location) RequiredKeywordParameterNode.new(source, node_id, location, flags, name, name_loc) end
#required_parameter_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"")
Create a new RequiredParameterNode node.
# File 'lib/prism/dsl.rb', line 707
def required_parameter_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: :"") RequiredParameterNode.new(source, node_id, location, flags, name) end
#rescue_modifier_node(source: default_source, node_id: 0, location: default_location, flags: 0, expression: default_node(source, location), keyword_loc: location, rescue_expression: default_node(source, location))
Create a new RescueModifierNode node.
# File 'lib/prism/dsl.rb', line 712
def rescue_modifier_node(source: default_source, node_id: 0, location: default_location, flags: 0, expression: default_node(source, location), keyword_loc: location, rescue_expression: default_node(source, location)) RescueModifierNode.new(source, node_id, location, flags, expression, keyword_loc, rescue_expression) end
#rescue_node(source: default_source, node_id: 0, location: default_location, flags: 0, keyword_loc: location, exceptions: [], operator_loc: nil, reference: nil, statements: nil, consequent: nil)
Create a new RescueNode node.
# File 'lib/prism/dsl.rb', line 717
def rescue_node(source: default_source, node_id: 0, location: default_location, flags: 0, keyword_loc: location, exceptions: [], operator_loc: nil, reference: nil, statements: nil, consequent: nil) RescueNode.new(source, node_id, location, flags, keyword_loc, exceptions, operator_loc, reference, statements, consequent) end
#rest_parameter_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: nil, name_loc: nil, operator_loc: location)
Create a new RestParameterNode node.
# File 'lib/prism/dsl.rb', line 722
def rest_parameter_node(source: default_source, node_id: 0, location: default_location, flags: 0, name: nil, name_loc: nil, operator_loc: location) RestParameterNode.new(source, node_id, location, flags, name, name_loc, operator_loc) end
#retry_node(source: default_source, node_id: 0, location: default_location, flags: 0)
Create a new RetryNode node.
# File 'lib/prism/dsl.rb', line 727
def retry_node(source: default_source, node_id: 0, location: default_location, flags: 0) RetryNode.new(source, node_id, location, flags) end
#return_node(source: default_source, node_id: 0, location: default_location, flags: 0, keyword_loc: location, arguments: nil)
Create a new ReturnNode node.
# File 'lib/prism/dsl.rb', line 732
def return_node(source: default_source, node_id: 0, location: default_location, flags: 0, keyword_loc: location, arguments: nil) ReturnNode.new(source, node_id, location, flags, keyword_loc, arguments) end
#self_node(source: default_source, node_id: 0, location: default_location, flags: 0)
Create a new SelfNode node.
# File 'lib/prism/dsl.rb', line 737
def self_node(source: default_source, node_id: 0, location: default_location, flags: 0) SelfNode.new(source, node_id, location, flags) end
#singleton_class_node(source: default_source, node_id: 0, location: default_location, flags: 0, locals: [], class_keyword_loc: location, operator_loc: location, expression: default_node(source, location), body: nil, end_keyword_loc: location)
Create a new SingletonClassNode node.
# File 'lib/prism/dsl.rb', line 747
def singleton_class_node(source: default_source, node_id: 0, location: default_location, flags: 0, locals: [], class_keyword_loc: location, operator_loc: location, expression: default_node(source, location), body: nil, end_keyword_loc: location) SingletonClassNode.new(source, node_id, location, flags, locals, class_keyword_loc, operator_loc, expression, body, end_keyword_loc) end
#source(string)
Create a new Source object.
#source_encoding_node(source: default_source, node_id: 0, location: default_location, flags: 0)
Create a new SourceEncodingNode node.
# File 'lib/prism/dsl.rb', line 752
def source_encoding_node(source: default_source, node_id: 0, location: default_location, flags: 0) SourceEncodingNode.new(source, node_id, location, flags) end
#source_file_node(source: default_source, node_id: 0, location: default_location, flags: 0, filepath: "")
Create a new SourceFileNode node.
# File 'lib/prism/dsl.rb', line 757
def source_file_node(source: default_source, node_id: 0, location: default_location, flags: 0, filepath: "") SourceFileNode.new(source, node_id, location, flags, filepath) end
#source_line_node(source: default_source, node_id: 0, location: default_location, flags: 0)
Create a new SourceLineNode node.
# File 'lib/prism/dsl.rb', line 762
def source_line_node(source: default_source, node_id: 0, location: default_location, flags: 0) SourceLineNode.new(source, node_id, location, flags) end
#splat_node(source: default_source, node_id: 0, location: default_location, flags: 0, operator_loc: location, expression: nil)
Create a new SplatNode node.
# File 'lib/prism/dsl.rb', line 767
def splat_node(source: default_source, node_id: 0, location: default_location, flags: 0, operator_loc: location, expression: nil) SplatNode.new(source, node_id, location, flags, operator_loc, expression) end
#statements_node(source: default_source, node_id: 0, location: default_location, flags: 0, body: [])
Create a new StatementsNode node.
# File 'lib/prism/dsl.rb', line 772
def statements_node(source: default_source, node_id: 0, location: default_location, flags: 0, body: []) StatementsNode.new(source, node_id, location, flags, body) end
#string_flag(name)
Retrieve the value of one of the StringFlags flags.
# File 'lib/prism/dsl.rb', line 949
def string_flag(name) case name when :forced_utf8_encoding then StringFlags::FORCED_UTF8_ENCODING when :forced_binary_encoding then StringFlags::FORCED_BINARY_ENCODING when :frozen then StringFlags::FROZEN when :mutable then StringFlags::MUTABLE else Kernel.raise ArgumentError, "invalid StringFlags flag: #{name.inspect}" end end
#string_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: nil, content_loc: location, closing_loc: nil, unescaped: "")
Create a new StringNode node.
# File 'lib/prism/dsl.rb', line 777
def string_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: nil, content_loc: location, closing_loc: nil, unescaped: "") StringNode.new(source, node_id, location, flags, opening_loc, content_loc, closing_loc, unescaped) end
#super_node(source: default_source, node_id: 0, location: default_location, flags: 0, keyword_loc: location, lparen_loc: nil, arguments: nil, rparen_loc: nil, block: nil)
Create a new SuperNode node.
# File 'lib/prism/dsl.rb', line 782
def super_node(source: default_source, node_id: 0, location: default_location, flags: 0, keyword_loc: location, lparen_loc: nil, arguments: nil, rparen_loc: nil, block: nil) SuperNode.new(source, node_id, location, flags, keyword_loc, lparen_loc, arguments, rparen_loc, block) end
#symbol_flag(name)
Retrieve the value of one of the SymbolFlags flags.
# File 'lib/prism/dsl.rb', line 960
def symbol_flag(name) case name when :forced_utf8_encoding then SymbolFlags::FORCED_UTF8_ENCODING when :forced_binary_encoding then SymbolFlags::FORCED_BINARY_ENCODING when :forced_us_ascii_encoding then SymbolFlags::FORCED_US_ASCII_ENCODING else Kernel.raise ArgumentError, "invalid SymbolFlags flag: #{name.inspect}" end end
#symbol_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: nil, value_loc: nil, closing_loc: nil, unescaped: "")
Create a new SymbolNode node.
# File 'lib/prism/dsl.rb', line 787
def symbol_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: nil, value_loc: nil, closing_loc: nil, unescaped: "") SymbolNode.new(source, node_id, location, flags, opening_loc, value_loc, closing_loc, unescaped) end
#true_node(source: default_source, node_id: 0, location: default_location, flags: 0)
Create a new TrueNode node.
# File 'lib/prism/dsl.rb', line 792
def true_node(source: default_source, node_id: 0, location: default_location, flags: 0) TrueNode.new(source, node_id, location, flags) end
#undef_node(source: default_source, node_id: 0, location: default_location, flags: 0, names: [], keyword_loc: location)
Create a new UndefNode node.
# File 'lib/prism/dsl.rb', line 797
def undef_node(source: default_source, node_id: 0, location: default_location, flags: 0, names: [], keyword_loc: location) UndefNode.new(source, node_id, location, flags, names, keyword_loc) end
#unless_node(source: default_source, node_id: 0, location: default_location, flags: 0, keyword_loc: location, predicate: default_node(source, location), then_keyword_loc: nil, statements: nil, consequent: nil, end_keyword_loc: nil)
Create a new UnlessNode node.
# File 'lib/prism/dsl.rb', line 802
def unless_node(source: default_source, node_id: 0, location: default_location, flags: 0, keyword_loc: location, predicate: default_node(source, location), then_keyword_loc: nil, statements: nil, consequent: nil, end_keyword_loc: nil) UnlessNode.new(source, node_id, location, flags, keyword_loc, predicate, then_keyword_loc, statements, consequent, end_keyword_loc) end
#until_node(source: default_source, node_id: 0, location: default_location, flags: 0, keyword_loc: location, closing_loc: nil, predicate: default_node(source, location), statements: nil)
Create a new UntilNode node.
# File 'lib/prism/dsl.rb', line 807
def until_node(source: default_source, node_id: 0, location: default_location, flags: 0, keyword_loc: location, closing_loc: nil, predicate: default_node(source, location), statements: nil) UntilNode.new(source, node_id, location, flags, keyword_loc, closing_loc, predicate, statements) end
#when_node(source: default_source, node_id: 0, location: default_location, flags: 0, keyword_loc: location, conditions: [], then_keyword_loc: nil, statements: nil)
Create a new WhenNode node.
# File 'lib/prism/dsl.rb', line 812
def when_node(source: default_source, node_id: 0, location: default_location, flags: 0, keyword_loc: location, conditions: [], then_keyword_loc: nil, statements: nil) WhenNode.new(source, node_id, location, flags, keyword_loc, conditions, then_keyword_loc, statements) end
#while_node(source: default_source, node_id: 0, location: default_location, flags: 0, keyword_loc: location, closing_loc: nil, predicate: default_node(source, location), statements: nil)
Create a new WhileNode node.
# File 'lib/prism/dsl.rb', line 817
def while_node(source: default_source, node_id: 0, location: default_location, flags: 0, keyword_loc: location, closing_loc: nil, predicate: default_node(source, location), statements: nil) WhileNode.new(source, node_id, location, flags, keyword_loc, closing_loc, predicate, statements) end
#x_string_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: location, content_loc: location, closing_loc: location, unescaped: "")
Create a new XStringNode node.
# File 'lib/prism/dsl.rb', line 822
def x_string_node(source: default_source, node_id: 0, location: default_location, flags: 0, opening_loc: location, content_loc: location, closing_loc: location, unescaped: "") XStringNode.new(source, node_id, location, flags, opening_loc, content_loc, closing_loc, unescaped) end
#yield_node(source: default_source, node_id: 0, location: default_location, flags: 0, keyword_loc: location, lparen_loc: nil, arguments: nil, rparen_loc: nil)
Create a new YieldNode node.
# File 'lib/prism/dsl.rb', line 827
def yield_node(source: default_source, node_id: 0, location: default_location, flags: 0, keyword_loc: location, lparen_loc: nil, arguments: nil, rparen_loc: nil) YieldNode.new(source, node_id, location, flags, keyword_loc, lparen_loc, arguments, rparen_loc) end