aboutsummaryrefslogtreecommitdiffstats
path: root/railties/lib/rails/rack/debugger.rb
blob: f7b77bcb3b9046862352247537c67b3bf8595d3b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
module Rails
  module Rack
    class Debugger
      def initialize(app)
        @app = app

        ARGV.clear # clear ARGV so that rails server options aren't passed to IRB

        require 'debugger'

        ::Debugger.start
        ::Debugger.settings[:autoeval] = true if ::Debugger.respond_to?(:settings)
        puts "=> Debugger enabled"
      rescue LoadError
        puts "You're missing the 'debugger' gem. Add it to your Gemfile, bundle it and try again."
        exit(1)
      end

      def call(env)
        @app.call(env)
      end
    end
  end
end