class Grumlin::Step

Attributes

client[R]

Public Class Methods

new(pool, name, *args, previous_step: nil) click to toggle source
Calls superclass method Grumlin::AnonymousStep::new
# File lib/grumlin/step.rb, line 7
def initialize(pool, name, *args, previous_step: nil)
  super(name, *args, previous_step: previous_step)
  @pool = pool
end

Public Instance Methods

iterate() click to toggle source
# File lib/grumlin/step.rb, line 23
def iterate
  @pool.acquire do |client|
    client.write(bytecode(no_return: true))
  end
end
next() click to toggle source
# File lib/grumlin/step.rb, line 12
def next
  @enum ||= toList.to_enum
  @enum.next
end
toList() click to toggle source
# File lib/grumlin/step.rb, line 17
def toList
  @pool.acquire do |client|
    client.write(bytecode)
  end
end

Private Instance Methods

add_step(step_name, args) click to toggle source
# File lib/grumlin/step.rb, line 31
def add_step(step_name, args)
  self.class.new(@pool, step_name, *args, previous_step: self)
end