Sha256: ebfa1b7d39a8ec67dec09b4fa696220daaf7006e25588c8dbcb76f020aaa55b5

Contents?: true

Size: 600 Bytes

Versions: 1

Compression:

Stored size: 600 Bytes

Contents

module Brototype

  # Bromise... it's stronger than a Promise
  class Bromise

    def initialize(object, *args)
      @object = object
      #@method = method
      @args = args
    end

    def but_when_i(&block)
      return_value = Bro.new(@object).i_can_haz(*@args)
      if return_value
        (block || {}).call return_value
      end
    end

    def here_come_the_errors(&block)
      begin
         Bro.new(@object).i_can_haz(*@args)
      rescue  Exception => e
        block.call e
      end
    end

    def errors_are_coming
      self.here_come_the_errors.call
    end

  end
end
    

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
brototype-0.9.4 lib/brototype/bromise.rb