261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
|
# File 'lib/kintama/context.rb', line 261
def runnable_on_line(line)
known_runnables = all_runnables.delete_if { |r| r.line_defined.nil? }
sorted_runnables = known_runnables.sort_by { |r| r.line_defined }
if sorted_runnables.first && line >= sorted_runnables.first.line_defined
next_runnable = sorted_runnables.find { |r| r.line_defined > line }
index = sorted_runnables.index(next_runnable)
if index != nil && index > 0
sorted_runnables[index-1]
else
sorted_runnables.last
end
else
nil
end
end
|