class Origen::Generator::PatternIterator
Attributes
key[RW]
Public Instance Methods
enabled?(options)
click to toggle source
# File lib/origen/generator/pattern_iterator.rb, line 50 def enabled?(options) options.keys.include?(key) end
invoke(options) { || ... }
click to toggle source
# File lib/origen/generator/pattern_iterator.rb, line 6 def invoke(options, &block) if enabled?(options) @loop.call(options[key], &block) else yield end end
loop(&block)
click to toggle source
# File lib/origen/generator/pattern_iterator.rb, line 14 def loop(&block) @loop = block end
pattern_name(&block)
click to toggle source
# File lib/origen/generator/pattern_iterator.rb, line 40 def pattern_name(&block) if block @pattern_name = block elsif @pattern_name @pattern_name else fail "pattern_name must be defined for iterator: #{key}" end end
setup(&block)
click to toggle source
# File lib/origen/generator/pattern_iterator.rb, line 18 def setup(&block) if block @setup = block elsif @setup @setup # Setup is optional for an iterator, return something to keep the caller happy else ->(arg) { arg } end end
startup(&block)
click to toggle source
# File lib/origen/generator/pattern_iterator.rb, line 29 def startup(&block) if block @startup = block elsif @startup @startup # Startup is optional for an iterator, return something to keep the caller happy else ->(_options, arg) { arg } end end