Module: Transpec::Syntax::Mixin::MatcherOwner::ClassMethods
- Defined in:
- lib/transpec/syntax/mixin/matcher_owner.rb
Instance Method Summary collapse
Instance Method Details
#add_matcher(matcher_class) ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/transpec/syntax/mixin/matcher_owner.rb', line 12 def add_matcher(matcher_class) accessor = "#{matcher_class.snake_case_name}_matcher" ivar = "@#{accessor}" define_method(accessor) do return instance_variable_get(ivar) if instance_variable_defined?(ivar) matcher = matcher_class.new( matcher_node, self, runtime_data, project, source_rewriter, report ) instance_variable_set(ivar, matcher) end matcher_accessors << accessor end |
#matcher_accessors ⇒ Object
27 28 29 |
# File 'lib/transpec/syntax/mixin/matcher_owner.rb', line 27 def matcher_accessors @matcher_accessors ||= [] end |