Sha256: 2d9c2331be284c86acfd6e21befeb96eda8bf8857edd648a7514ce747aa37159
Contents?: true
Size: 707 Bytes
Versions: 3
Compression:
Stored size: 707 Bytes
Contents
def create_task(taskname, task_object_proc, &execute_body) taskclass = :"Albacore_TaskFor_#{taskname}" taskmethod = taskname.to_s.downcase.to_sym Object.class_eval(<<-EOF, __FILE__, __LINE__) def #{taskmethod}(name=:#{taskname}, *args, &block) Albacore.const_get("#{taskclass}").new(name, *args, &block) end EOF Albacore.class_eval do const_set(taskclass, Class.new(Albacore::AlbacoreTask) do define_method :execute do |name| task_object = task_object_proc.call task_object.load_config_by_task_name(name) call_task_block(task_object) execute_body.call(task_object) unless execute_body.nil? end end) end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
albacore-0.2.0.preview1 | lib/rake/support/createtask.rb |
albacore-0.1.5 | lib/rake/support/createtask.rb |
albacore-0.1.4 | lib/rake/support/createtask.rb |