| 420 | } |
| 421 | |
| 422 | class TMoveOnlyInt { |
| 423 | public: |
| 424 | ui32 Value = 0; |
| 425 | |
| 426 | explicit TMoveOnlyInt(ui32 value = 0) : Value(value) {} |
| 427 | TMoveOnlyInt(TMoveOnlyInt&&) = default; |
| 428 | TMoveOnlyInt& operator=(TMoveOnlyInt&&) = default; |
| 429 | |
| 430 | TMoveOnlyInt(const TMoveOnlyInt&) = delete; |
| 431 | TMoveOnlyInt& operator=(const TMoveOnlyInt&) = delete; |
| 432 | |
| 433 | bool operator==(const TMoveOnlyInt& rhs) const { |
| 434 | return Value == rhs.Value; |
| 435 | } |
| 436 | |
| 437 | explicit operator size_t() const { |
| 438 | return Value; |
| 439 | } |
| 440 | }; |
| 441 | |
| 442 | Y_UNIT_TEST(MoveOnlySimpleTest) { |
| 443 | typedef TLRUCache<TMoveOnlyInt, TMoveOnlyInt> TCache; |