Make collect work for types with no default constructors
authorAndrii Grynenko <andrii@fb.com>
Fri, 13 Nov 2015 21:47:27 +0000 (13:47 -0800)
committerfacebook-github-bot-1 <folly-bot@fb.com>
Fri, 13 Nov 2015 22:20:20 +0000 (14:20 -0800)
commit5bad4e9ff7c7bdca58b3e0c312b7f4f54dcea936
tree357b2b898dc989c91fd9820e13d4fbc6077a2208
parent07c150868f7833b8cf659cf888aa3febd8c2ca8a
Make collect work for types with no default constructors

Summary: This doesn't make the code less efficient, because RVO can't be used for CollectVariadicContext. Thus moving existing tuple vs constructing new tuple by moving all values from other tuple (where each value is wrapped in folly::Optional) should be pretty much the same.

Reviewed By: hannesr

Differential Revision: D2650293

fb-gh-sync-id: 648a358bf093a0bb9d058a997af9bf59014ad77c
folly/futures/detail/Core.h
folly/futures/test/CollectTest.cpp