Lines Matching refs:MultiArgConstructor
218 struct MultiArgConstructor { struct
220 MultiArgConstructor(int x, int y) : x(x), y(y) {} in MultiArgConstructor() function
221 explicit MultiArgConstructor(int x, bool positive) in MultiArgConstructor() function
224 MultiArgConstructor(const MultiArgConstructor &) = delete;
225 MultiArgConstructor(MultiArgConstructor &&) = delete;
226 MultiArgConstructor &operator=(const MultiArgConstructor &) = delete;
227 MultiArgConstructor &operator=(MultiArgConstructor &&) = delete;
229 friend bool operator==(const MultiArgConstructor &LHS, in operator ==()
230 const MultiArgConstructor &RHS) { in operator ==()
235 ~MultiArgConstructor() { in ~MultiArgConstructor() argument
242 unsigned MultiArgConstructor::Destructions = 0;
244 static_assert(!std::is_trivially_copyable<Optional<MultiArgConstructor>>::value,
248 MultiArgConstructor::ResetCounts(); in TEST()
249 Optional<MultiArgConstructor> A; in TEST()
256 EXPECT_EQ(0u, MultiArgConstructor::Destructions); in TEST()
263 EXPECT_EQ(1u, MultiArgConstructor::Destructions); in TEST()
267 MultiArgConstructor::ResetCounts(); in TEST()
269 Optional<MultiArgConstructor> A{in_place, 1, 2}; in TEST()
274 Optional<MultiArgConstructor> B{in_place, 5, false}; in TEST()
279 EXPECT_EQ(0u, MultiArgConstructor::Destructions); in TEST()
281 EXPECT_EQ(2u, MultiArgConstructor::Destructions); in TEST()
285 MultiArgConstructor::ResetCounts(); in TEST()
287 Optional<MultiArgConstructor> A{in_place, 1, 2}; in TEST()
288 Optional<MultiArgConstructor> B; in TEST()
290 EXPECT_EQ(0u, MultiArgConstructor::Destructions); in TEST()
293 EXPECT_EQ(2u, MultiArgConstructor::Destructions); in TEST()