Method: Prism::Translation::Ripper#visit_class_variable_or_write_node

Defined in:
lib/prism/translation/ripper.rb

#visit_class_variable_or_write_node(node) ⇒ Object

@@foo ||= bar ^^^^^^^^^^^^^



1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
# File 'lib/prism/translation/ripper.rb', line 1423

def visit_class_variable_or_write_node(node)
  bounds(node.name_loc)
  target = on_var_field(on_cvar(node.name.to_s))

  bounds(node.operator_loc)
  operator = on_op("||=")
  value = visit_write_value(node.value)

  bounds(node.location)
  on_opassign(target, operator, value)
end