lib_ruby_parser/lexer/
yylval.rs1use crate::lexer::*;
2use crate::Bytes;
3use crate::TokenBuf;
4
5impl Lexer {
6 pub(crate) fn set_yylval_id(&mut self, id: &str) {
7 println_if_debug_lexer!("set_yylval_id({})", id);
8 self.lval = Some(Bytes::new(Vec::from(id)));
9 }
10
11 pub(crate) fn set_yylval_literal(&mut self, value: &TokenBuf) {
12 println_if_debug_lexer!(
13 "set_yylval_literal({:#?}) ptok = {}, pcur = {}",
14 value,
15 self.buffer.ptok,
16 self.buffer.pcur
17 );
18 self.lval = Some(value.bytes.clone());
19 }
20
21 pub(crate) fn set_yylval_num(&mut self, flags: String) {
22 println_if_debug_lexer!("set_yylval_num {:#?}", flags);
23 self.lval = Some(Bytes::new(Vec::from(flags)));
24 }
25
26 pub(crate) fn set_yylval_str(&mut self, value: &TokenBuf) {
27 println_if_debug_lexer!("set_yylval_str {:#?}", value);
28 self.lval = Some(value.bytes.clone());
29 }
30
31 pub(crate) fn set_yylval_name(&mut self) {
32 println_if_debug_lexer!("set_yyval_name({:#?})", self.tokenbuf);
33 self.lval = Some(self.tokenbuf.bytes.clone());
34 }
35}