Sha256: 6088ae339300e560b55d57e1335ed612e1cae741d130b4230f78144c819c43f7

Contents?: true

Size: 694 Bytes

Versions: 4

Compression:

Stored size: 694 Bytes

Contents

# frozen_string_literal: true

module Fear
  # An object which may eventually be completed and awaited using blocking methods.
  #
  # @abstract
  # @api private
  # @see Fear::Await
  module Awaitable
    # Await +completed+ state of this +Awaitable+
    #
    # @param _at_most [Fixnum] maximum timeout in seconds
    # @return [Fear::Awaitable]
    # @raise [Timeout::Error]
    def __ready__(_at_most)
      raise NotImplementedError
    end

    # Await and return the result of this +Awaitable+
    #
    # @param _at_most [Fixnum] maximum timeout in seconds
    # @return [any]
    # @raise [Timeout::Error]
    def __result__(_at_most)
      raise NotImplementedError
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
fear-3.0.0 lib/fear/awaitable.rb
fear-2.0.1 lib/fear/awaitable.rb
fear-2.0.0 lib/fear/awaitable.rb
fear-1.2.0 lib/fear/awaitable.rb