class Linearly::Runner

{Runner} is a wrapper around a single step with inputs and outputs, which validates the inputs, runs the step, and validates the outputs. @api private

Attributes

step[R]

Return the wrapped {Step}

@return [Step] @api private

Public Class Methods

new(step) click to toggle source

Constructor for the {Runner} object @param step [Step] anything that implements the Step interface

(+call+, +inputs+ and +outputs+ methods).

@api private

# File lib/linearly/runner.rb, line 13
def initialize(step)
  @step = step
end

Private Instance Methods

steps() click to toggle source

Wrap the provided {Step} with input and output validation

@return [Array<Step>] @api private

# File lib/linearly/runner.rb, line 29
def steps
  [
    Validation::Inputs.new(step, step.inputs),
    step,
    Validation::Outputs.new(step, step.outputs),
  ]
end