Sha256: bc16e2c14553b5d2a7b504db84d0aceda39529d38c0cde2c833ad81a43e34e16

Contents?: true

Size: 562 Bytes

Versions: 5

Compression:

Stored size: 562 Bytes

Contents

require "guard"
require "guard/plugin"

module Guard
  class Reevaluator < Guard::Plugin
    def run_on_modifications(files)
      return unless ::Guard::Watcher.match_guardfile?(files)
      ::Guard.save_scope
      ::Guard.evaluator.reevaluate_guardfile
    rescue ScriptError, StandardError => e
      ::Guard::UI.warning("Failed to reevaluate file: #{e}")

      options = { watchers: [::Guard::Watcher.new("Guardfile")] }
      ::Guard.add_plugin(:reevaluator, options)

      throw :task_has_failed
    ensure
      ::Guard.restore_scope
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
guard-2.8.2 lib/guard/reevaluator.rb
guard-2.8.1 lib/guard/reevaluator.rb
guard-2.8.0 lib/guard/reevaluator.rb
guard-2.7.3 lib/guard/reevaluator.rb
guard-2.7.2 lib/guard/reevaluator.rb