Sha256: 9c8fa1ab98a2b09fe84e060e39e29a2c365ca821bfb9b71d644d115fe5777ada

Contents?: true

Size: 484 Bytes

Versions: 1

Compression:

Stored size: 484 Bytes

Contents

module Vedeu
  class Input
    class << self
      def evaluate(input, args = [])
        new(input, args).evaluate
      end
    end

    def initialize(input, args = [])
      @input = input
      @args  = args || []
    end

    def evaluate
      command.execute(*args) if exists?
    end

    private

    attr_reader :input, :args

    def exists?
      command.is_a?(Command)
    end

    def command
      @command ||= CommandRepository.find_by_input(input)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
vedeu-0.0.11 lib/vedeu/process/input.rb