Lines Matching full:pw

28 using ::pw::allocator::test::AllocatorForTest;
29 using ::pw::async2::Context;
30 using ::pw::async2::Dispatcher;
31 using ::pw::async2::Pending;
32 using ::pw::async2::Poll;
33 using ::pw::async2::Ready;
34 using ::pw::async2::Task;
35 using ::pw::async2::Waker;
36 using ::pw::channel::ByteChannel;
37 using ::pw::channel::DatagramWriter;
38 using ::pw::channel::kReadable;
39 using ::pw::channel::kReliable;
40 using ::pw::channel::kSeekable;
41 using ::pw::channel::kWritable;
42 using ::pw::multibuf::MultiBuf;
43 using ::pw::multibuf::MultiBufAllocationFuture;
44 using ::pw::multibuf::MultiBufAllocator;
45 using ::pw::multibuf::SimpleAllocator;
47 static_assert(sizeof(::pw::channel::AnyChannel) == 2 * sizeof(void*));
53 : public pw::channel::ByteChannelImpl<kReliable, kReadable, kWritable> {
57 Poll<pw::Result<pw::multibuf::MultiBuf>> DoPendRead(Context&) override { in DoPendRead()
66 Poll<pw::Status> DoPendReadyToWrite(Context&) override { return Pending(); } in DoPendReadyToWrite()
74 pw::Status DoStageWrite(pw::multibuf::MultiBuf&&) override { in DoStageWrite()
75 return pw::Status::Unimplemented(); in DoStageWrite()
78 Poll<pw::Status> DoPendWrite(Context&) override { in DoPendWrite()
79 return Ready(pw::Status::Unimplemented()); in DoPendWrite()
83 Poll<pw::Status> DoPendClose(Context&) override { return pw::OkStatus(); } in DoPendClose()
86 class ReadOnlyStub : public pw::channel::Implement<pw::channel::ByteReader> {
92 Poll<pw::Result<pw::multibuf::MultiBuf>> DoPendRead(Context&) override { in DoPendRead()
96 Poll<pw::Status> DoPendClose(Context&) override { return pw::OkStatus(); } in DoPendClose()
99 class WriteOnlyStub : public pw::channel::Implement<pw::channel::ByteWriter> {
103 Poll<pw::Status> DoPendReadyToWrite(Context&) override { return Pending(); } in DoPendReadyToWrite()
110 pw::Status DoStageWrite(pw::multibuf::MultiBuf&&) override { in DoStageWrite()
111 return pw::Status::Unimplemented(); in DoStageWrite()
114 Poll<pw::Status> DoPendWrite(Context&) override { in DoPendWrite()
115 return Ready(pw::Status::Unimplemented()); in DoPendWrite()
119 Poll<pw::Status> DoPendClose(Context&) override { return pw::OkStatus(); } in DoPendClose()
133 EXPECT_EQ(Ready(pw::OkStatus()), channel.PendClose(cx)); in TEST()
137 EXPECT_EQ(pw::Status::FailedPrecondition(), in TEST()
139 EXPECT_EQ(Ready(pw::Status::FailedPrecondition()), in TEST()
141 EXPECT_EQ(Ready(pw::Status::FailedPrecondition()), channel.PendWrite(cx)); in TEST()
142 EXPECT_EQ(Ready(pw::Status::FailedPrecondition()), channel.PendClose(cx)); in TEST()
170 bool Illegal(pw::channel::ByteChannel<kReadable, pw::channel::kReliable>& foo) { in Illegal()
176 : public pw::channel::ByteChannelImpl<kReadable, pw::channel::kReliable> {};
179 bool Illegal(pw::channel::ByteChannel<>& foo) { return foo.is_read_open(); } in Illegal()
182 class NoChannel : public pw::channel::ByteChannelImpl<> {};
185 bool Illegal(pw::channel::ByteChannel<pw::channel::kReliable>& foo) { in Illegal()
190 class BadChannel : public pw::channel::ByteChannelImpl<pw::channel::kReliable> {
195 pw::channel:: in Illegal()
202 bool Illegal(pw::channel::ByteChannel<kReadable, kReadable>& foo) { in Illegal()
208 : public pw::channel::ByteChannelImpl<kReliable, kReadable> {
221 Poll<pw::Result<MultiBuf>> DoPendRead(Context& cx) override { in DoPendRead()
230 Poll<pw::Status> DoPendClose(Context&) override { in DoPendClose()
231 return Ready(pw::OkStatus()); in DoPendClose()
238 class TestDatagramWriter : public pw::channel::Implement<DatagramWriter> {
242 const pw::multibuf::MultiBuf& last_datagram() const { return last_dgram_; } in last_datagram()
264 Poll<pw::Status> DoPendReadyToWrite(Context& cx) override { in DoPendReadyToWrite()
266 return Ready(pw::OkStatus()); in DoPendReadyToWrite()
276 pw::Status DoStageWrite(MultiBuf&& buffer) override { in DoStageWrite()
278 return pw::Status::Unavailable(); in DoStageWrite()
283 return pw::OkStatus(); in DoStageWrite()
292 Poll<pw::Status> DoPendWrite(Context& cx) override { in DoPendWrite()
299 return pw::OkStatus(); in DoPendWrite()
302 Poll<pw::Status> DoPendClose(Context&) override { in DoPendClose()
303 return Ready(pw::OkStatus()); in DoPendClose()
405 pw::ConstByteSpan str(pw::as_bytes(pw::span(kWriteData))); in TEST()
407 pw::Status write_status = channel_.StageWrite(std::move(**buffer)); in TEST()
457 void TakesAChannel(const pw::channel::AnyChannel&) {} in TakesAChannel()
459 const pw::channel::ByteChannel<kReadable>& TakesAReadableByteChannel( in TakesAReadableByteChannel()
460 const pw::channel::ByteChannel<kReadable>& channel) { in TakesAReadableByteChannel()
464 void TakesAWritableByteChannel(const pw::channel::ByteChannel<kWritable>&) {} in TakesAWritableByteChannel()
481 TakesAReadableByteChannel(byte_channel.as<pw::channel::ByteReader>()); in TEST()
483 byte_channel.channel().as<pw::channel::ByteReader>()); in TEST()
486 byte_channel.as<pw::channel::ByteChannel<kReliable, kReadable>>()); in TEST()
489 .as<pw::channel::ByteChannel<kReliable, kReadable>>()); in TEST()
492 TakesAChannel(byte_channel.as<pw::channel::AnyChannel>()); in TEST()
498 [[maybe_unused]] const pw::channel::AnyChannel& plain = byte_channel; in TEST()
518 pw::channel::DatagramChannel<kReliable, kReadable>& dgram) { in DatagramChannelNcTest()
524 pw::channel::DatagramChannel<kReliable, kReadable>& dgram) { in DatagramChannelNcTest()
525 TakesAReadableByteChannel(dgram.as<pw::channel::ByteChannel<kReadable>>()); in DatagramChannelNcTest()
531 Foo(pw::channel::ByteChannel<kReadable>&) {} in Foo()
540 const pw::channel::DatagramReaderWriter&) {} in TakesAReadableByteChannel()
547 EXPECT_EQ(&byte_channel.as<pw::channel::ByteChannel<kReadable>>(), in TEST()
553 [[maybe_unused]] void Bad(Context& cx, pw::channel::DatagramReader& c) { in Bad()
558 [[maybe_unused]] void Bad(Context& cx, pw::channel::ByteReaderImpl& c) { in Bad()
563 [[maybe_unused]] void Bad(Context& cx, pw::channel::ByteWriter& c) { in Bad()
568 [[maybe_unused]] void Bad(Context& cx, pw::channel::DatagramWriterImpl& c) { in Bad()