(&self, source: &'a str)
| 103 | } |
| 104 | |
| 105 | pub fn parse_value<T>(&self, source: &'a str) -> Vec<'a, SourceCursor<'a>> |
| 106 | where |
| 107 | T: Parse<'a> + ToCursors, |
| 108 | { |
| 109 | let lexer = Lexer::new(self.atoms, source); |
| 110 | let mut parser = Parser::new(self.bump, source, lexer); |
| 111 | let parsed = parser.parse_entirely::<T>(); |
| 112 | debug_assert!( |
| 113 | parsed.output.is_some(), |
| 114 | "Transformer::parse_value failed to parse {:?}: {:?}", |
| 115 | source, |
| 116 | parsed.errors |
| 117 | ); |
| 118 | let mut cursors = Vec::new_in(self.bump()); |
| 119 | let mut sink = CursorToSourceCursorSink::new(source, &mut cursors); |
| 120 | parsed.to_cursors(&mut sink); |
| 121 | cursors |
| 122 | } |
| 123 | |
| 124 | pub fn reset(&self) { |
| 125 | *self.changed.borrow_mut() = false; |
nothing calls this directly
no test coverage detected