class Byebug::OptionSetter


Handles byebug’s command line options

def debug

def debug
  @opts.on '-d', '--debug', 'Set $DEBUG=true' do
    $DEBUG = true
  end
end

def help

def help
  @opts.on '-h', '--help', 'Display this message' do
    @runner.help = @opts.help
  end
end

def include_flag

def include_flag
  @opts.on '-I', '--include list', 'Add to paths to $LOAD_PATH' do |list|
    $LOAD_PATH.push(list.split(':')).flatten!
  end
end

def initialize(runner, opts)

def initialize(runner, opts)
  @runner = runner
  @opts = opts
end

def post_mortem

def post_mortem
  @opts.on '-m', '--[no-]post-mortem', 'Use post-mortem mode' do |v|
    Setting[:post_mortem] = v
  end
end

def quit

def quit
  @opts.on '-q', '--[no-]quit', 'Quit when script finishes' do |v|
    @runner.quit = v
  end
end

def rc

def rc
  @opts.on '-x', '--[no-]rc', 'Run byebug initialization file' do |v|
    @runner.init_script = v
  end
end

def remote

def remote
  @opts.on '-R', '--remote [host:]port', 'Remote debug [host:]port' do |p|
    @runner.remote = p
  end
end

def require_flag

def require_flag
  @opts.on '-r', '--require file', 'Require library before script' do |lib|
    require lib
  end
end

def setup

def setup
  debug
  include_flag
  post_mortem
  quit
  rc
  stop
  require_flag
  remote
  trace
  version
  help
end

def stop

def stop
  @opts.on '-s', '--[no-]stop', 'Stop when script is loaded' do |v|
    @runner.stop = v
  end
end

def trace

def trace
  @opts.on '-t', '--[no-]trace', 'Turn on line tracing' do |v|
    Setting[:linetrace] = v
  end
end

def version

def version
  @opts.on '-v', '--version', 'Print program version' do
    @runner.version = Byebug::VERSION
  end
end