pub struct TextReader { /* private fields */ }
Implementations§
Source§impl TextReader
Text character reader.
impl TextReader
Text character reader.
§Examples
use text_reader::TextReader;
let mut reader = TextReader::new("abc\ndef");
while reader.has_next() {
let ch = reader.next();
println!("{:?}", ch);
if let Some('\n') = ch {
println!("{:?}", reader.this_line());
}
}
println!("{:?}", reader.this_line());
pub fn new<S: AsRef<OsStr>>(text: S) -> TextReader
Sourcepub fn detector(&mut self) -> Detector<'_>
pub fn detector(&mut self) -> Detector<'_>
Detect possible strings
§Examples
use text_reader::TextReader;
let mut reader = TextReader::new("abc\ndef");
let mut detector = reader.detector();
Sourcepub fn reset(&mut self) -> &mut TextReader
pub fn reset(&mut self) -> &mut TextReader
Reset to first character
§Examples
use text_reader::TextReader;
let mut reader = TextReader::new("abc\ndef");
let reader = reader.reset();
Sourcepub fn peek(&self) -> Option<char>
pub fn peek(&self) -> Option<char>
Peek current character
§Examples
use text_reader::TextReader;
let mut reader = TextReader::new("abc\ndef");
let ch = reader.peek();
Sourcepub fn next(&mut self) -> Option<char>
pub fn next(&mut self) -> Option<char>
Next character
§Examples
use text_reader::TextReader;
let mut reader = TextReader::new("abc\ndef");
let ch = reader.next();
Sourcepub fn position(&self) -> usize
pub fn position(&self) -> usize
Position of text
§Examples
use text_reader::TextReader;
let mut reader = TextReader::new("abc\ndef");
let position = reader.position();
Sourcepub fn line(&self) -> usize
pub fn line(&self) -> usize
Current text line number
§Examples
use text_reader::TextReader;
let mut reader = TextReader::new("abc\ndef");
let line = reader.line();
Sourcepub fn cursor(&self) -> usize
pub fn cursor(&self) -> usize
Current line position
§Examples
use text_reader::TextReader;
let mut reader = TextReader::new("abc\ndef");
reader.next();
reader.next();
reader.next();
reader.next();
let cursor = reader.cursor();
println!("CURSOR: {}", cursor); // 2
Sourcepub fn len(&self) -> usize
pub fn len(&self) -> usize
Text length
§Examples
use text_reader::TextReader;
let reader = TextReader::new("abc\ndef");
let len = reader.len();
Sourcepub fn back(&mut self) -> &mut TextReader
pub fn back(&mut self) -> &mut TextReader
Back to previous character
§Examples
use text_reader::TextReader;
let mut reader = TextReader::new("abc\ndef");
reader.back();
Trait Implementations§
Auto Trait Implementations§
impl Freeze for TextReader
impl RefUnwindSafe for TextReader
impl Send for TextReader
impl Sync for TextReader
impl Unpin for TextReader
impl UnwindSafe for TextReader
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more