class Bud::LatticeScanner

A push-based dataflow element that scans a lattice wrapper

Attributes

collection[R]
invalidate_set[R]
rescan_set[R]

Public Class Methods

new(bud_instance, collection) click to toggle source
Calls superclass method Bud::LatticePushElement::new
# File lib/bud/lattice-core.rb, line 255
def initialize(bud_instance, collection)
  super(bud_instance)
  @collection = collection
  @rescan_set = []
  @invalidate_set = []
end

Public Instance Methods

inspect() click to toggle source
# File lib/bud/lattice-core.rb, line 270
def inspect
  "#{super} [#{collection.qualified_tabname}]"
end
scan(first_iter) click to toggle source
# File lib/bud/lattice-core.rb, line 262
def scan(first_iter)
  if first_iter || @bud_instance.options[:disable_lattice_semi_naive]
    push_out(@collection.current_value)
  else
    push_out(@collection.current_delta)
  end
end