class Thread
Public Instance Methods
pop_resugan_context(force_invoke = false)
click to toggle source
# File lib/resugan/thread.rb, line 16 def pop_resugan_context(force_invoke = false) _resugan_context = @resugan_context_stack.pop @resugan_context = @resugan_context_stack.last # depending on option, only invoke if top level if !force_invoke && Resugan::Kernel.reuse_top_level_context? _resugan_context.invoke if @resugan_context_stack.find { |e| e.namespace == _resugan_context.namespace }.nil? elsif _resugan_context.invoke end _resugan_context end
push_resugan_context(namespace = '', force_invoke = false)
click to toggle source
# File lib/resugan/thread.rb, line 2 def push_resugan_context(namespace = '', force_invoke = false) @resugan_context_stack ||= [] namespace = namespace.to_s if @resugan_context.nil? || !Resugan::Kernel.reuse_top_level_context? || force_invoke @resugan_context = Resugan::Context.new(namespace) elsif @resugan_context.namespace != namespace @resugan_context = (@resugan_context_stack.reverse.find { |e| e.namespace == namespace }) || Resugan::Context.new(namespace) end @resugan_context_stack << @resugan_context end
resugan_context()
click to toggle source
# File lib/resugan/thread.rb, line 30 def resugan_context @resugan_context end
Private Instance Methods
clear_context()
click to toggle source
# File lib/resugan/thread.rb, line 36 def clear_context @resugan_context_stack = [] @resugan_context end