Fix folly::Partial copy/move construction
Summary:
Any attempt to copy or move an object returned by folly::partial
yields a compiler error because it is invoking the constructor
for wrapping callable objects, which triggers a type mismatch.
This diff fixes that by explicitly naming the default implementations
of copy and move constructors.
This diff also adds additional tests that fail to compile without this fix.
And then this diff also moves the Partial class into folly::detail,
because it is not meant to be named in user code, but only returned
by the folly::partial function.
Reviewed By: mhx
Differential Revision:
D3923809
fbshipit-source-id:
a8883951afd2a1999acbfffc51296393b058f860