Spec-Zone.ru › Tokio

Структура Lines

pub struct Lines<R> { /* private fields */ }
Доступно только при включённой функции крейта io-util.

Читает строки из AsyncBufRead.

Значение типа Lines можно преобразовать в Stream с помощью LinesStream.

Обычно этот тип создаётся с помощью метода lines.

Реализации

impl<R> Lines<R>
where R: AsyncBufRead + Unpin,

pub async fn next_line(&mut self) -> Result<Option<String>>

Возвращает следующую строку в потоке.

Безопасность отмены

Этот метод безопасен при отмене.

Примеры
use tokio::io::AsyncBufReadExt;

let mut lines = my_buf_read.lines();

while let Some(line) = lines.next_line().await? {
    println!("length = {}", line.len())
}

pub fn get_mut(&mut self) -> &mut R

Возвращает изменяемую ссылку на нижележащий объект чтения.

pub fn get_ref(&mut self) -> &R

Возвращает ссылку на нижележащий объект чтения.

pub fn into_inner(self) -> R

Извлекает нижележащий объект чтения из этого значения Lines<R>.

Обратите внимание, что все оставшиеся данные во внутреннем буфере будут потеряны. Поэтому последующее чтение из нижележащего объекта чтения может привести к потере данных.

impl<R> Lines<R>
where R: AsyncBufRead,

pub fn poll_next_line( self: Pin<&mut Self>, cx: &mut Context<'_>, ) -> Poll<Result<Option<String>>>

Проверяет готовность следующей строки в потоке.

Этот метод возвращает:

  • Poll::Pending, если следующая строка ещё недоступна.
  • Poll::Ready(Ok(Some(line))), если следующая строка доступна.
  • Poll::Ready(Ok(None)), если в этом потоке больше нет строк.
  • Poll::Ready(Err(err)), если при чтении следующей строки произошла ошибка ввода-вывода.

Если метод возвращает Poll::Pending, для Waker в переданном Context запланировано уведомление о пробуждении, когда во внешнем ресурсе ввода-вывода станут доступны новые байты. Обратите внимание: при нескольких вызовах poll_next_line уведомление о пробуждении запланировано только для Waker из Context, переданного в последнем вызове.

Реализации трейтов

impl<R: Debug> Debug for Lines<R>

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Форматирует значение с помощью указанного форматировщика. Подробнее

impl<'__pin, R> Unpin for Lines<R>
where PinnedFieldsOf<__Origin<'__pin, R>>: Unpin,

Автоматические реализации трейтов

impl<R> Freeze for Lines<R>
where R: Freeze,

impl<R> RefUnwindSafe for Lines<R>
where R: RefUnwindSafe,

impl<R> Send for Lines<R>
where R: Send,

impl<R> Sync for Lines<R>
where R: Sync,

impl<R> UnsafeUnpin for Lines<R>
where R: UnsafeUnpin,

impl<R> UnwindSafe for Lines<R>
where R: UnwindSafe,

Общие реализации

impl<T> Any for T
where T: 'static + ?Sized,

fn type_id(&self) -> TypeId

Получает TypeId у self. Подробнее

impl<T> Borrow<T> for T
where T: ?Sized,

fn borrow(&self) -> &T

Неизменяемо заимствует значение, находящееся во владении. Подробнее

impl<T> BorrowMut<T> for T
where T: ?Sized,

fn borrow_mut(&mut self) -> &mut T

Изменяемо заимствует значение, находящееся во владении. Подробнее

impl<T> From<T> for T

fn from(t: T) -> T

Возвращает аргумент без изменений.

impl<T> Instrument for T

fn instrument(self, span: Span) -> Instrumented<Self> ⓘ

Инструментирует этот тип с помощью предоставленного Span, возвращая обёртку Instrumented. Подробнее

fn in_current_span(self) -> Instrumented<Self> ⓘ

Инструментирует этот тип с помощью текущего Span, возвращая обёртку Instrumented. Подробнее

impl<T, U> Into<U> for T
where U: From<T>,

fn into(self) -> U

Вызывает U::from(self).

Иными словами, это преобразование выполняет действия, определяемые реализацией From<T> for U.

impl<T, U> TryFrom<U> for T
where U: Into<T>,

type Error = Infallible

Тип, возвращаемый в случае ошибки преобразования.

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Выполняет преобразование.

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

type Error = <U as TryFrom<T>>::Error

Тип, возвращаемый в случае ошибки преобразования.

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Выполняет преобразование.

impl<T> WithSubscriber for T

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘ
where S: Into<Dispatch>,

Присоединяет предоставленный Subscriber к этому типу и возвращает обёртку WithDispatch. Подробнее

fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ

Присоединяет текущий subscriber по умолчанию Subscriber к этому типу и возвращает обёртку WithDispatch. Подробнее

MIT License
Copyright © Tokio Contributors
https://docs.rs/tokio/1.53.1/tokio/io/struct.Lines.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API