MCPcopy Create free account
hub / github.com/apache/datafusion / poll_inner

Method poll_inner

datafusion/datasource/src/file_stream/mod.rs:92–115  ·  view source on GitHub ↗
(&mut self, cx: &mut Context<'_>)

Source from the content-addressed store, hash-verified

90 }
91
92 fn poll_inner(&mut self, cx: &mut Context<'_>) -> Poll<Option<Result<RecordBatch>>> {
93 loop {
94 match &mut self.state {
95 FileStreamState::Scan { scan_state: queue } => {
96 let action = queue.poll_scan(cx);
97 match action {
98 ScanAndReturn::Continue => continue,
99 ScanAndReturn::Done(result) => {
100 self.state = FileStreamState::Done;
101 return Poll::Ready(result);
102 }
103 ScanAndReturn::Error(err) => {
104 self.state = FileStreamState::Error;
105 return Poll::Ready(Some(Err(err)));
106 }
107 ScanAndReturn::Return(result) => return result,
108 }
109 }
110 FileStreamState::Error | FileStreamState::Done => {
111 return Poll::Ready(None);
112 }
113 }
114 }
115 }
116}
117
118impl Stream for FileStream {

Callers 1

poll_nextMethod · 0.80

Calls 1

poll_scanMethod · 0.80

Tested by

no test coverage detected