instance method
Prism::InspectVisitor#visit_index_operator_write_node
visit_index_operator_write_node(node)
lib/prism/inspect_visitor.rb
View on GitHub ↗
# File tmp/rubies/ruby-4.0.0/lib/prism/inspect_visitor.rb, line 1207
def visit_index_operator_write_node(node)
commands << [inspect_node("IndexOperatorWriteNode", node), indent]
flags = [("newline" if node.newline?), ("static_literal" if node.static_literal?), ("safe_navigation" if node.safe_navigation?), ("variable_call" if node.variable_call?), ("attribute_write" if node.attribute_write?), ("ignore_visibility" if node.ignore_visibility?)].compact
commands << ["├── flags: #{flags.empty? ? "∅" : flags.join(", ")}\n", indent]
if (receiver = node.receiver).nil?
commands << ["├── receiver: ∅\n", indent]
else
commands << ["├── receiver:\n", indent]
commands << [receiver, "#{indent}│ "]
end
commands << ["├── call_operator_loc: #{inspect_location(node.call_operator_loc)}\n", indent]
commands << ["├── opening_loc: #{inspect_location(node.opening_loc)}\n", indent]
if (arguments = node.arguments).nil?
commands << ["├── arguments: ∅\n", indent]
else
commands << ["├── arguments:\n", indent]
commands << [arguments, "#{indent}│ "]
end
commands << ["├── closing_loc: #{inspect_location(node.closing_loc)}\n", indent]
if (block = node.block).nil?
commands << ["├── block: ∅\n", indent]
else
commands << ["├── block:\n", indent]
commands << [block, "#{indent}│ "]
end
commands << ["├── binary_operator: #{node.binary_operator.inspect}\n", indent]
commands << ["├── binary_operator_loc: #{inspect_location(node.binary_operator_loc)}\n", indent]
commands << ["└── value:\n", indent]
commands << [node.value, "#{indent} "]
end
Inspect a IndexOperatorWriteNode node.