Module: Transpec::Syntax::Mixin::Send

Included in:
BeClose, Double, Expect, Have, Transpec::Syntax::MethodStub, OperatorMatcher, RaiseError, Should, ShouldReceive
Defined in:
lib/transpec/syntax/mixin/send.rb

Defined Under Namespace

Modules: ClassMethods

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(klass) ⇒ Object



7
8
9
# File 'lib/transpec/syntax/mixin/send.rb', line 7

def self.included(klass)
  klass.extend(ClassMethods)
end

Instance Method Details

#arg_nodeObject



71
72
73
# File 'lib/transpec/syntax/mixin/send.rb', line 71

def arg_node
  @node.children[2]
end

#arg_nodesObject



75
76
77
# File 'lib/transpec/syntax/mixin/send.rb', line 75

def arg_nodes
  @node.children[2..-1]
end

#arg_rangeObject



87
88
89
# File 'lib/transpec/syntax/mixin/send.rb', line 87

def arg_range
  arg_node.loc.expression
end

#method_nameObject



67
68
69
# File 'lib/transpec/syntax/mixin/send.rb', line 67

def method_name
  @node.children[1]
end

#parentheses_rangeObject



91
92
93
# File 'lib/transpec/syntax/mixin/send.rb', line 91

def parentheses_range
  selector_range.end.join(expression_range.end)
end

#range_after_argObject



103
104
105
# File 'lib/transpec/syntax/mixin/send.rb', line 103

def range_after_arg
  arg_range.end.join(expression_range.end)
end

#range_in_between_receiver_and_selectorObject



95
96
97
# File 'lib/transpec/syntax/mixin/send.rb', line 95

def range_in_between_receiver_and_selector
  receiver_range.end.join(selector_range.begin)
end

#range_in_between_selector_and_argObject



99
100
101
# File 'lib/transpec/syntax/mixin/send.rb', line 99

def range_in_between_selector_and_arg
  selector_range.end.join(arg_range.begin)
end

#receiver_nodeObject



63
64
65
# File 'lib/transpec/syntax/mixin/send.rb', line 63

def receiver_node
  @node.children[0]
end

#receiver_rangeObject



83
84
85
# File 'lib/transpec/syntax/mixin/send.rb', line 83

def receiver_range
  receiver_node.loc.expression
end

#selector_rangeObject



79
80
81
# File 'lib/transpec/syntax/mixin/send.rb', line 79

def selector_range
  @node.loc.selector
end