class Fudge::Tasks::Task

Implementation of base Task

Attributes

args[R]
options[R]

Public Class Methods

name() click to toggle source

Default name derived from class name. Can be overriden by specific tasks.

@return [Symbol]

Calls superclass method
# File lib/fudge/tasks/task.rb, line 11
def self.name
  name = /(\w+::)*(?<class>\w+\z)/.match(super)[:class]
  underscored = name.gsub(/(?<pre>[^_])(?<char>[A-Z])/, "\\k<pre>_\\k<char>")
  underscored.downcase.to_sym
end
new(*args) click to toggle source
# File lib/fudge/tasks/task.rb, line 17
def initialize(*args)
  @args = args.dup
  @options = @args[-1].kind_of?(Hash) ? @args.delete_at(-1) : {}

  @options.each do |k,v|
    send("#{k}=", v) if respond_to?("#{k}=")
  end

  @args
end

Private Instance Methods

get_formatter(options = {}) click to toggle source
# File lib/fudge/tasks/task.rb, line 29
def get_formatter(options = {})
  options[:formatter] || Fudge::Formatters::Simple.new
end