Module: TestProf::RSpecDissect::MemoizedInstrumentation
- Defined in:
- lib/test_prof/rspec_dissect.rb
Overview
:nodoc:
Instance Method Summary collapse
Instance Method Details
#fetch_or_store(id) ⇒ Object
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/test_prof/rspec_dissect.rb', line 17 def fetch_or_store(id, *) res = nil Thread.current[:_rspec_dissect_let_depth] ||= 0 Thread.current[:_rspec_dissect_let_depth] += 1 begin res = if Thread.current[:_rspec_dissect_let_depth] == 1 RSpecDissect.track(:let, id) { super } else super end ensure Thread.current[:_rspec_dissect_let_depth] -= 1 end res end |