Sha256: 86f33d1d5f30d0ff11455d72a391325f207e2e23253d5427ed1c3b3d24be51bd
Contents?: true
Size: 596 Bytes
Versions: 2
Compression:
Stored size: 596 Bytes
Contents
require 'simple_command/version' require 'simple_command/errors' module SimpleCommand attr_reader :result module ClassMethods def perform(*args) new(*args).perform end end def self.prepended(base) base.extend ClassMethods end def perform fail NotImplementedError unless defined?(super) @performed = true @result = super self end def success? performed? && !failure? end def failure? performed? && errors.any? end def errors @errors ||= Errors.new end private def performed? @performed ||= false end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
simple_command-0.0.7 | lib/simple_command.rb |
simple_command-0.0.6 | lib/simple_command.rb |