# File lib/em/deferrable.rb, line 43 43: def callback &block 44: return unless block 45: @deferred_status ||= :unknown 46: if @deferred_status == :succeeded 47: block.call(*@deferred_args) 48: elsif @deferred_status != :failed 49: @callbacks ||= [] 50: @callbacks.unshift block # << block 51: end 52: end