Eliminate GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_ from classes with const/reference members.

These classes are already non-assignable; we don't need to say so explicitly.
This commit is contained in:
Arthur O'Dwyer 2020-03-23 14:32:11 -04:00
parent 7f1baa3768
commit 072e56a25d
3 changed files with 0 additions and 96 deletions

View File

@ -717,13 +717,9 @@ class ReturnAction {
private:
bool performed_;
const std::shared_ptr<R> wrapper_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(Impl);
};
const std::shared_ptr<R> value_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(ReturnAction);
};
// Implements the ReturnNull() action.
@ -784,13 +780,9 @@ class ReturnRefAction {
private:
T& ref_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(Impl);
};
T& ref_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(ReturnRefAction);
};
// Implements the polymorphic ReturnRefOfCopy(x) action, which can be
@ -836,8 +828,6 @@ class ReturnRefOfCopyAction {
};
const T value_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(ReturnRefOfCopyAction);
};
// Implements the polymorphic ReturnRoundRobin(v) action, which can be
@ -894,8 +884,6 @@ class AssignAction {
private:
T1* const ptr_;
const T2 value_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(AssignAction);
};
#if !GTEST_OS_WINDOWS_MOBILE
@ -917,8 +905,6 @@ class SetErrnoAndReturnAction {
private:
const int errno_;
const T result_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(SetErrnoAndReturnAction);
};
#endif // !GTEST_OS_WINDOWS_MOBILE
@ -1023,13 +1009,9 @@ class IgnoreResultAction {
OriginalFunction;
const Action<OriginalFunction> action_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(Impl);
};
const A action_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(IgnoreResultAction);
};
template <typename InnerAction, size_t... I>

View File

@ -444,8 +444,6 @@ class MatcherCastImpl<T, Matcher<U> > {
private:
const Matcher<U> source_matcher_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(Impl);
};
};
@ -861,13 +859,9 @@ class RefMatcher<T&> {
private:
const Super& object_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(Impl);
};
T& object_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(RefMatcher);
};
// Polymorphic helper functions for narrow and wide string matchers.
@ -970,8 +964,6 @@ class StrEqualityMatcher {
const StringType string_;
const bool expect_eq_;
const bool case_sensitive_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(StrEqualityMatcher);
};
// Implements the polymorphic HasSubstr(substring) matcher, which
@ -1026,8 +1018,6 @@ class HasSubstrMatcher {
private:
const StringType substring_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(HasSubstrMatcher);
};
// Implements the polymorphic StartsWith(substring) matcher, which
@ -1083,8 +1073,6 @@ class StartsWithMatcher {
private:
const StringType prefix_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(StartsWithMatcher);
};
// Implements the polymorphic EndsWith(substring) matcher, which
@ -1139,8 +1127,6 @@ class EndsWithMatcher {
private:
const StringType suffix_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(EndsWithMatcher);
};
// Implements a matcher that compares the two fields of a 2-tuple
@ -1234,8 +1220,6 @@ class NotMatcherImpl : public MatcherInterface<const T&> {
private:
const Matcher<T> matcher_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(NotMatcherImpl);
};
// Implements the Not(m) matcher, which matches a value that doesn't
@ -1317,8 +1301,6 @@ class AllOfMatcherImpl : public MatcherInterface<const T&> {
private:
const std::vector<Matcher<T> > matchers_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(AllOfMatcherImpl);
};
// VariadicMatcher is used for the variadic implementation of
@ -1423,8 +1405,6 @@ class AnyOfMatcherImpl : public MatcherInterface<const T&> {
private:
const std::vector<Matcher<T> > matchers_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(AnyOfMatcherImpl);
};
// AnyOfMatcher is used for the variadic implementation of AnyOf(m_1, m_2, ...).
@ -1452,8 +1432,6 @@ class SomeOfArrayMatcher {
private:
const ::std::vector<T> matchers_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(SomeOfArrayMatcher);
};
template <typename T>
@ -1587,8 +1565,6 @@ class PredicateFormatterFromMatcher {
private:
const M matcher_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(PredicateFormatterFromMatcher);
};
// A helper function for converting a matcher to a predicate-formatter
@ -1740,8 +1716,6 @@ class FloatingEqMatcher {
const bool nan_eq_nan_;
// max_abs_error will be used for value comparison when >= 0.
const FloatType max_abs_error_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(Impl);
};
// The following 3 type conversion operators allow FloatEq(expected) and
@ -1770,8 +1744,6 @@ class FloatingEqMatcher {
const bool nan_eq_nan_;
// max_abs_error will be used for value comparison when >= 0.
const FloatType max_abs_error_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(FloatingEqMatcher);
};
// A 2-tuple ("binary") wrapper around FloatingEqMatcher:
@ -1901,13 +1873,9 @@ class PointeeMatcher {
private:
const Matcher<const Pointee&> matcher_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(Impl);
};
const InnerMatcher matcher_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(PointeeMatcher);
};
#if GTEST_HAS_RTTI
@ -1944,8 +1912,6 @@ class WhenDynamicCastToMatcherBase {
static void GetCastTypeDescription(::std::ostream* os) {
*os << "when dynamic_cast to " << GetToName() << ", ";
}
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(WhenDynamicCastToMatcherBase);
};
// Primary template.
@ -2043,8 +2009,6 @@ class FieldMatcher {
// Contains either "whose given field " if the name of the field is unknown
// or "whose field `name_of_field` " if the name is known.
const std::string whose_field_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(FieldMatcher);
};
// Implements the Property() matcher for matching a property
@ -2113,8 +2077,6 @@ class PropertyMatcher {
// Contains either "whose given property " if the name of the property is
// unknown or "whose property `name_of_property` " if the name is known.
const std::string whose_property_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(PropertyMatcher);
};
// Type traits specifying various features of different functors for ResultOf.
@ -2204,14 +2166,10 @@ class ResultOfMatcher {
// how many times the callable will be invoked.
mutable CallableStorageType callable_;
const Matcher<ResultType> matcher_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(Impl);
}; // class Impl
const CallableStorageType callable_;
const InnerMatcher matcher_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(ResultOfMatcher);
};
// Implements a matcher that checks the size of an STL-style container.
@ -2256,12 +2214,10 @@ class SizeIsMatcher {
private:
const Matcher<SizeType> size_matcher_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(Impl);
};
private:
const SizeMatcher size_matcher_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(SizeIsMatcher);
};
// Implements a matcher that checks the begin()..end() distance of an STL-style
@ -2313,12 +2269,10 @@ class BeginEndDistanceIsMatcher {
private:
const Matcher<DistanceType> distance_matcher_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(Impl);
};
private:
const DistanceMatcher distance_matcher_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(BeginEndDistanceIsMatcher);
};
// Implements an equality matcher for any STL-style container whose elements
@ -2411,8 +2365,6 @@ class ContainerEqMatcher {
private:
const StlContainer expected_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(ContainerEqMatcher);
};
// A comparator functor that uses the < operator to compare two values.
@ -2494,8 +2446,6 @@ class WhenSortedByMatcher {
private:
const Comparator comparator_;
const ContainerMatcher matcher_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(WhenSortedByMatcher);
};
// Implements Pointwise(tuple_matcher, rhs_container). tuple_matcher
@ -2611,15 +2561,11 @@ class PointwiseMatcher {
private:
const Matcher<InnerMatcherArg> mono_tuple_matcher_;
const RhsStlContainer rhs_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(Impl);
};
private:
const TupleMatcher tuple_matcher_;
const RhsStlContainer rhs_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(PointwiseMatcher);
};
// Holds the logic common to ContainsMatcherImpl and EachMatcherImpl.
@ -2662,8 +2608,6 @@ class QuantifierMatcherImpl : public MatcherInterface<Container> {
protected:
const Matcher<const Element&> inner_matcher_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(QuantifierMatcherImpl);
};
// Implements Contains(element_matcher) for the given argument type Container.
@ -2738,8 +2682,6 @@ class ContainsMatcher {
private:
const M inner_matcher_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(ContainsMatcher);
};
// Implements polymorphic Each(element_matcher).
@ -2756,8 +2698,6 @@ class EachMatcher {
private:
const M inner_matcher_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(EachMatcher);
};
struct Rank1 {};
@ -2828,8 +2768,6 @@ class KeyMatcherImpl : public MatcherInterface<PairType> {
private:
const Matcher<const KeyType&> inner_matcher_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(KeyMatcherImpl);
};
// Implements polymorphic Key(matcher_for_key).
@ -2846,8 +2784,6 @@ class KeyMatcher {
private:
const M matcher_for_key_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(KeyMatcher);
};
// Implements Pair(first_matcher, second_matcher) for the given argument pair
@ -2933,8 +2869,6 @@ class PairMatcherImpl : public MatcherInterface<PairType> {
const Matcher<const FirstType&> first_matcher_;
const Matcher<const SecondType&> second_matcher_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(PairMatcherImpl);
};
// Implements polymorphic Pair(first_matcher, second_matcher).
@ -2953,8 +2887,6 @@ class PairMatcher {
private:
const FirstMatcher first_matcher_;
const SecondMatcher second_matcher_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(PairMatcher);
};
// Implements ElementsAre() and ElementsAreArray().
@ -3340,7 +3272,6 @@ class UnorderedElementsAreMatcher {
private:
const MatcherTuple matchers_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(UnorderedElementsAreMatcher);
};
// Implements ElementsAre.
@ -3370,7 +3301,6 @@ class ElementsAreMatcher {
private:
const MatcherTuple matchers_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(ElementsAreMatcher);
};
// Implements UnorderedElementsAreArray(), IsSubsetOf(), and IsSupersetOf().
@ -3415,8 +3345,6 @@ class ElementsAreArrayMatcher {
private:
const ::std::vector<T> matchers_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(ElementsAreArrayMatcher);
};
// Given a 2-tuple matcher tm of type Tuple2Matcher and a value second
@ -3478,8 +3406,6 @@ class BoundSecondMatcher {
private:
const Matcher<const ArgTuple&> mono_tuple2_matcher_;
const Second second_value_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(Impl);
};
const Tuple2Matcher tuple2_matcher_;
@ -3552,12 +3478,10 @@ class OptionalMatcher {
private:
const Matcher<ValueType> value_matcher_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(Impl);
};
private:
const ValueMatcher value_matcher_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(OptionalMatcher);
};
namespace variant_matcher {

View File

@ -1295,8 +1295,6 @@ class MockSpec {
internal::FunctionMocker<F>* const function_mocker_;
// The argument matchers specified in the spec.
ArgumentMatcherTuple matchers_;
GTEST_DISALLOW_ASSIGN_BUT_DEFAULT_COPY_(MockSpec);
}; // class MockSpec
// Wrapper type for generically holding an ordinary value or lvalue reference.