| 6 | static int assignCallCount = 0; |
| 7 | |
| 8 | struct ComplexStruct |
| 9 | { |
| 10 | ComplexStruct() = delete; |
| 11 | ComplexStruct(const ComplexStruct& other) = delete; |
| 12 | ComplexStruct& operator=(const ComplexStruct& other) noexcept = delete; |
| 13 | |
| 14 | ComplexStruct(uint32_t _v) noexcept |
| 15 | : v(_v) |
| 16 | { |
| 17 | ctorCallCount++; |
| 18 | } |
| 19 | |
| 20 | ComplexStruct(ComplexStruct&& other) noexcept |
| 21 | : v(other.v) |
| 22 | { |
| 23 | ctorCallCount++; |
| 24 | } |
| 25 | |
| 26 | ~ComplexStruct() noexcept |
| 27 | { |
| 28 | // |
| 29 | dtorCallCount++; |
| 30 | } |
| 31 | |
| 32 | ComplexStruct& operator=(ComplexStruct&& other) noexcept |
| 33 | { |
| 34 | v = other.v; |
| 35 | assignCallCount++; |
| 36 | return *this; |
| 37 | } |
| 38 | |
| 39 | uint32_t v; |
| 40 | }; |
| 41 | |
| 42 | namespace Excalibur |
| 43 | { |
nothing calls this directly
no outgoing calls
no test coverage detected