class Zapata::Primitive::Send
Public Class Methods
new(code)
click to toggle source
Calls superclass method
Zapata::Primitive::Base::new
# File lib/zapata/primitive/send.rb, line 6 def initialize(code) super if node.name == :private Diver.access_level = :private elsif node.name == :protected Diver.access_level = :protected elsif node.name == :public Diver.access_level = :public end end
Public Instance Methods
node()
click to toggle source
# File lib/zapata/primitive/send.rb, line 22 def node receiver, name, args = @code.to_a type = @code.type OpenStruct.new(type: type, name: name, args: args, receiver: receiver) end
raw_receiver()
click to toggle source
# File lib/zapata/primitive/send.rb, line 28 def raw_receiver return unless node.receiver Diver.dive(node.receiver).to_raw end
to_a()
click to toggle source
# File lib/zapata/primitive/send.rb, line 18 def to_a [value] end
to_raw()
click to toggle source
# File lib/zapata/primitive/send.rb, line 34 def to_raw if raw_receiver && raw_receiver.type == :const ConstSend.new(raw_receiver, node.name, node.args).to_raw else missing_name = if node.receiver Unparser.unparse(code) else node.name end Missing.new(missing_name).to_raw end end