title: Super.tap {} - what does it do and use cases?
body: <p>I came across this construction in a gem and don't understand the intent. 
  I know what tap does alone, but why would someone call super.tap {} instead of just continuing the code normally after the super call.</p>
  
  <pre><code>def my_method
   super.tap do |u|
      if @user &amp;&amp; @user.new_record?
        @omniauth = u.session[:session]
        u.session[:omniauth] = nil unless @user.new_record?
      end
    end
  end
  </code></pre>
  
  <p>Can anyone enlighten me?</p>