Module: Transpec::Syntax::Mixin::MonkeyPatch
Instance Method Summary
collapse
Methods included from Send
#arg_node, #arg_nodes, #arg_range, #args_range, #method_name, #parentheses_range, #range_after_arg, #range_in_between_receiver_and_selector, #range_in_between_selector_and_arg, #receiver_node, #receiver_range, #selector_range
#conversion_target?, #dynamic_analysis_target?
Instance Method Details
#register_syntax_availability_analysis_request(rewriter, key, methods) ⇒ Object
13
14
15
16
17
18
19
20
21
|
# File 'lib/transpec/syntax/mixin/monkey_patch.rb', line 13
def register_syntax_availability_analysis_request(rewriter, key, methods)
code = "self.class.ancestors.any? { |a| a.name.start_with?('RSpec::') }"
methods.each do |method|
code << " && respond_to?(#{method.inspect})"
end
rewriter.register_request(node, key, code, :context)
end
|
#subject_node ⇒ Object
31
32
33
|
# File 'lib/transpec/syntax/mixin/monkey_patch.rb', line 31
def subject_node
receiver_node
end
|
#subject_range ⇒ Object
35
36
37
|
# File 'lib/transpec/syntax/mixin/monkey_patch.rb', line 35
def subject_range
receiver_range
end
|
#syntax_available?(key) ⇒ Boolean
23
24
25
26
27
28
29
|
# File 'lib/transpec/syntax/mixin/monkey_patch.rb', line 23
def syntax_available?(key)
if runtime_data.present?(node, key)
runtime_data[node, key]
else
static_context_inspector.send(key)
end
end
|