Add Parser::new_from_iter.

This commit is contained in:
Ethiraric 2024-10-17 19:17:26 +02:00
parent 53dc2b9aba
commit 55858d15d9

View file

@ -7,7 +7,7 @@
use crate::{
input::{str::StrInput, Input},
scanner::{ScanError, Scanner, Span, TScalarStyle, Token, TokenType},
Marker,
BufferedInput, Marker,
};
use std::collections::HashMap;
@ -244,6 +244,17 @@ impl<'a> Parser<StrInput<'a>> {
}
}
impl<T> Parser<BufferedInput<T>>
where
T: Iterator<Item = char>,
{
/// Create a new instance of a parser from an iterator of `char`s.
#[must_use]
pub fn new_from_iter(iter: T) -> Self {
Parser::new(BufferedInput::new(iter))
}
}
impl<T: Input> Parser<T> {
/// Create a new instance of a parser from the given input of characters.
pub fn new(src: T) -> Parser<T> {