# File lib/yard/handlers/base.rb, line 239 def push_state(opts = {}, &block) opts = { :namespace => nil, :scope => :instance, :owner => nil }.update(opts) if opts[:namespace] ns, vis, sc = namespace, visibility, scope self.namespace = opts[:namespace] self.visibility = :public self.scope = opts[:scope] end oldowner, self.owner = self.owner, opts[:owner] ? opts[:owner] : namespace yield self.owner = oldowner if opts[:namespace] self.namespace = ns self.owner = namespace self.visibility = vis self.scope = sc end end