Sha256: bf636d29c8f3af15c2a137a371f2a7c67a249cf21720ae16e50b35513160dd0f
Contents?: true
Size: 818 Bytes
Versions: 6
Compression:
Stored size: 818 Bytes
Contents
require_relative '../repository/command_repository' require_relative '../support/queue' require_relative '../support/parser' module Vedeu class Process def self.evaluate new.evaluate end def initialize; end def evaluate return false if no_input? fail StopIteration if stop_requested? Parser.parse(result) unless no_result? end private def stop_requested? result == :stop end def no_result? result.nil? || result.empty? end def no_input? input.nil? || input.empty? end def result @result ||= command.execute(*args) if command end def command @command ||= CommandRepository.by_input(input) end def input @input ||= Queue.dequeue end def args [] end end end
Version data entries
6 entries across 6 versions & 1 rubygems