Class: CabezaDeTermo::JsonSpec::MessageSend

Inherits:
Object
  • Object
show all
Defined in:
lib/cabeza-de-termo/json-spec/metaprogramming/message-send.rb

Overview

A message to be sent to an object. It holds the receiver, the method name and the arguments. It justs waits to be evaluated with :call.

Instance Method Summary collapse

Constructor Details

#initialize(receiver, method_name, *args, &block) ⇒ MessageSend

Returns a new instance of MessageSend.



9
10
11
12
13
14
# File 'lib/cabeza-de-termo/json-spec/metaprogramming/message-send.rb', line 9

def  initialize(receiver, method_name, *args, &block)
	@receiver = receiver
	@method_name = method_name
	@args = args
	@block = block
end

Instance Method Details

#argsObject



24
25
26
# File 'lib/cabeza-de-termo/json-spec/metaprogramming/message-send.rb', line 24

def args()
	@args
end

#blockObject



28
29
30
# File 'lib/cabeza-de-termo/json-spec/metaprogramming/message-send.rb', line 28

def block()
	@block
end

#callObject



32
33
34
# File 'lib/cabeza-de-termo/json-spec/metaprogramming/message-send.rb', line 32

def call()
	receiver.send(method_name, *args, &@block)
end

#method_nameObject



20
21
22
# File 'lib/cabeza-de-termo/json-spec/metaprogramming/message-send.rb', line 20

def method_name()
	@method_name
end

#receiverObject



16
17
18
# File 'lib/cabeza-de-termo/json-spec/metaprogramming/message-send.rb', line 16

def receiver()
	@receiver
end