Method: Red::AssignmentNode::Attribute#initialize

Defined in:
lib/red/nodes/assignment_nodes.rb

#initialize(receiver_sexp, writer_sexp, arguments_array_sexp, options) ⇒ Attribute

:attrasgn, expression, :foo= | :[]=, [:array, element, element, …]


60
61
62
63
64
65
# File 'lib/red/nodes/assignment_nodes.rb', line 60

def initialize(receiver_sexp, writer_sexp, arguments_array_sexp, options)
  receiver  = receiver_sexp.red!(:as_receiver => true)
  writer    = (METHOD_ESCAPE[writer_sexp] || writer_sexp).red!
  arguments = arguments_array_sexp[1..-1].map {|argument_sexp| argument_sexp.red!(:as_argument => true) }.join(",")
  self << "%s.m$%s(%s)" % [receiver, writer, arguments]
end