| 607 | } |
| 608 | |
| 609 | bool vector() |
| 610 | { |
| 611 | { |
| 612 | std::vector<ReaderWriterQueue<int>> queues; |
| 613 | queues.push_back(ReaderWriterQueue<int>()); |
| 614 | queues.emplace_back(); |
| 615 | |
| 616 | queues[0].enqueue(1); |
| 617 | queues[1].enqueue(2); |
| 618 | std::swap(queues[0], queues[1]); |
| 619 | |
| 620 | int item; |
| 621 | ASSERT_OR_FAIL(queues[0].try_dequeue(item)); |
| 622 | ASSERT_OR_FAIL(item == 2); |
| 623 | |
| 624 | ASSERT_OR_FAIL(queues[1].try_dequeue(item)); |
| 625 | ASSERT_OR_FAIL(item == 1); |
| 626 | } |
| 627 | |
| 628 | { |
| 629 | std::vector<BlockingReaderWriterQueue<int>> queues; |
| 630 | queues.push_back(BlockingReaderWriterQueue<int>()); |
| 631 | queues.emplace_back(); |
| 632 | |
| 633 | queues[0].enqueue(1); |
| 634 | queues[1].enqueue(2); |
| 635 | std::swap(queues[0], queues[1]); |
| 636 | |
| 637 | int item; |
| 638 | ASSERT_OR_FAIL(queues[0].try_dequeue(item)); |
| 639 | ASSERT_OR_FAIL(item == 2); |
| 640 | |
| 641 | queues[1].wait_dequeue(item); |
| 642 | ASSERT_OR_FAIL(item == 1); |
| 643 | } |
| 644 | return true; |
| 645 | } |
| 646 | |
| 647 | #if MOODYCAMEL_HAS_EMPLACE |
| 648 | bool emplace() |
nothing calls this directly
no test coverage detected