| Class | PrettyPrint::GroupQueue |
| In: |
lib/prettyprint.rb
|
| Parent: | Object |
# File lib/prettyprint.rb, line 313
313: def initialize(*groups)
314: @queue = []
315: groups.each {|g| enq g}
316: end
# File lib/prettyprint.rb, line 339
339: def delete(group)
340: @queue[group.depth].delete(group)
341: end
# File lib/prettyprint.rb, line 324
324: def deq
325: @queue.each {|gs|
326: (gs.length-1).downto(0) {|i|
327: unless gs[i].breakables.empty?
328: group = gs.slice!(i, 1).first
329: group.break
330: return group
331: end
332: }
333: gs.each {|group| group.break}
334: gs.clear
335: }
336: return nil
337: end