lib_ruby_parser/lexer/
tokadd.rs

1use crate::lexer::*;
2use crate::maybe_byte::*;
3
4pub(crate) trait TokAdd<T> {
5    fn tokadd(&mut self, c: T);
6}
7
8impl TokAdd<MaybeByte> for Lexer {
9    fn tokadd(&mut self, c: MaybeByte) {
10        match c {
11            MaybeByte::Some(c) => self.tokadd(c),
12            MaybeByte::EndOfInput => panic!("can't emit EOF"),
13        }
14    }
15}
16
17impl TokAdd<u8> for Lexer {
18    fn tokadd(&mut self, c: u8) {
19        self.tokenbuf.push(c)
20    }
21}