class ActiveRecord::Promise
def then(&block)
Post.async_pick(:title).then { |title| title.upcase }.value
when the value is accessed:
Returns a new +ActiveRecord::Promise+ that will apply the passed block
def then(&block) Promise.new(@future_result, @block ? @block >> block : block) end