class Jam_Func::Run
¶ ↑
Run
(private) ===============================¶ ↑
¶ ↑
Attributes
err[R]
err_name[R]
Public Class Methods
new(jam, parent_run, data, arr)
click to toggle source
# File lib/Jam_Func.rb, line 226 def initialize(jam, parent_run, data, arr) @jam = jam @parent_run = parent_run @data = data @tasks = nil @proc_list = arr.map { |n| n.kind_of?(String) ? canon_name(n) : n } end
Public Instance Methods
run()
click to toggle source
# File lib/Jam_Func.rb, line 241 def run raise("Already running.") if @tasks @tasks = [] @proc_list.each { |var| if var.kind_of? String @tasks.push(@jam.entire_list_for(var)); else @tasks.push var end } @tasks = @tasks.flatten jam = Jam_Func::Jam.new(@data) @tasks.detect { |func| is_fine = catch :jam_error do args = [jam.data, jam.last, jam].slice(0, func.arity) jam._last func.call *args true end !is_fine } jam end