Sha256: b0ac72381b023e7ba8536cedc33f4a6b4ced856d944adae0700a881224980b03

Contents?: true

Size: 920 Bytes

Versions: 2

Compression:

Stored size: 920 Bytes

Contents

module Byebug

  # Implements byebug "reload" command.
  class ReloadCommand < Command
    self.allow_in_control = true

    register_setting_get(:reload_source_on_change) do
      Byebug.class_variable_get(:@@reload_source_on_change)
    end

    register_setting_set(:reload_source_on_change) do |value|
      Byebug.class_variable_set(:@@reload_source_on_change, value)
    end
    Command.settings[:reload_source_on_change] = true

    def regexp
      /^\s*r(?:eload)?$/
    end

    def execute
      Byebug.source_reload
      print "Source code is reloaded. Automatic reloading is #{source_reloading}.\n"
    end

    private

    def source_reloading
      Command.settings[:reload_source_on_change] ? 'on' : 'off'
    end

    class << self
      def help_command
        'reload'
      end

      def help(cmd)
        %{
          r[eload]\tforces source code reloading
        }
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
byebug-1.1.0 lib/byebug/commands/reload.rb
byebug-1.0.3 lib/byebug/commands/reload.rb