mirror of
https://github.com/google/googletest.git
synced 2025-01-16 12:16:37 +08:00
Call move() by qualified name (::testing::internal::move() or just internal::move()).
Pull in gtest 696.
This commit is contained in:
parent
389bad61e2
commit
d370f85b02
@ -463,7 +463,7 @@ class ActionAdaptor : public ActionInterface<F1> {
|
||||
// on return. Useful for move-only types, but could be used on any type.
|
||||
template <typename T>
|
||||
struct ByMoveWrapper {
|
||||
explicit ByMoveWrapper(T value) : payload(move(value)) {}
|
||||
explicit ByMoveWrapper(T value) : payload(internal::move(value)) {}
|
||||
T payload;
|
||||
};
|
||||
|
||||
@ -497,7 +497,7 @@ class ReturnAction {
|
||||
// Constructs a ReturnAction object from the value to be returned.
|
||||
// 'value' is passed by value instead of by const reference in order
|
||||
// to allow Return("string literal") to compile.
|
||||
explicit ReturnAction(R value) : value_(new R(move(value))) {}
|
||||
explicit ReturnAction(R value) : value_(new R(internal::move(value))) {}
|
||||
|
||||
// This template type conversion operator allows Return(x) to be
|
||||
// used in ANY function that returns x's type.
|
||||
@ -561,7 +561,7 @@ class ReturnAction {
|
||||
GTEST_CHECK_(!performed_)
|
||||
<< "A ByMove() action should only be performed once.";
|
||||
performed_ = true;
|
||||
return move(wrapper_->payload);
|
||||
return internal::move(wrapper_->payload);
|
||||
}
|
||||
|
||||
private:
|
||||
|
@ -1302,12 +1302,14 @@ template <typename T>
|
||||
class ReferenceOrValueWrapper {
|
||||
public:
|
||||
// Constructs a wrapper from the given value/reference.
|
||||
explicit ReferenceOrValueWrapper(T value) : value_(move(value)) {}
|
||||
explicit ReferenceOrValueWrapper(T value)
|
||||
: value_(::testing::internal::move(value)) {
|
||||
}
|
||||
|
||||
// Unwraps and returns the underlying value/reference, exactly as
|
||||
// originally passed. The behavior of calling this more than once on
|
||||
// the same object is unspecified.
|
||||
T Unwrap() { return move(value_); }
|
||||
T Unwrap() { return ::testing::internal::move(value_); }
|
||||
|
||||
// Provides nondestructive access to the underlying value/reference.
|
||||
// Always returns a const reference (more precisely,
|
||||
@ -1404,7 +1406,9 @@ class ActionResultHolder : public UntypedActionResultHolderBase {
|
||||
private:
|
||||
typedef ReferenceOrValueWrapper<T> Wrapper;
|
||||
|
||||
explicit ActionResultHolder(Wrapper result) : result_(move(result)) {}
|
||||
explicit ActionResultHolder(Wrapper result)
|
||||
: result_(::testing::internal::move(result)) {
|
||||
}
|
||||
|
||||
Wrapper result_;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user