Sha256: b2887049d00bb809e8f9338687ec3a461cc50208c3ff3c0fdbc442007f8e85e1

Contents?: true

Size: 908 Bytes

Versions: 45

Compression:

Stored size: 908 Bytes

Contents

#!/usr/bin/env ruby

require "rake"
require "rake/tasklib"

require "guard/cli"

module Guard
  # Provides a method to define a Rake task that
  # runs the Guard plugins.
  #
  class RakeTask < ::Rake::TaskLib
    # Name of the main, top level task
    attr_accessor :name

    # CLI options
    attr_accessor :options

    # Initialize the Rake task
    #
    # @param [Symbol] name the name of the Rake task
    # @param [String] options the CLI options
    # @yield [Guard::RakeTask] the task
    #
    def initialize(name = :guard, options = "")
      @name = name
      @options = options

      yield self if block_given?

      desc "Starts Guard with options: '#{options}'"
      task name => ["#{name}:start"]

      namespace(name) do
        desc "Starts Guard with options: '#{options}'"
        task(:start) do
          ::Guard::CLI.start(options.split)
        end
      end
    end
  end
end

Version data entries

45 entries across 45 versions & 10 rubygems

Version Path
guard-2.12.9 lib/guard/rake_task.rb
guard-2.12.8 lib/guard/rake_task.rb
guard-2.12.7 lib/guard/rake_task.rb
guard-2.12.6 lib/guard/rake_task.rb
guard-2.12.5 lib/guard/rake_task.rb