mirror of
https://github.com/rust-lang/rust.git
synced 2025-02-01 17:42:47 +00:00
return errors from tree builder
This commit is contained in:
parent
90926b9479
commit
1cece9f219
@ -56,8 +56,9 @@ where
|
|||||||
if tree_sink.roots.len() != 1 {
|
if tree_sink.roots.len() != 1 {
|
||||||
return Err(ExpandError::ConversionError);
|
return Err(ExpandError::ConversionError);
|
||||||
}
|
}
|
||||||
|
//FIXME: would be cool to report errors
|
||||||
Ok(tree_sink.inner.finish())
|
let (tree, _errors) = tree_sink.inner.finish();
|
||||||
|
Ok(tree)
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Parses the token tree (result of macro expansion) to an expression
|
/// Parses the token tree (result of macro expansion) to an expression
|
||||||
|
@ -626,13 +626,13 @@ impl SyntaxTreeBuilder {
|
|||||||
(green, self.errors)
|
(green, self.errors)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn finish(self) -> TreeArc<SyntaxNode> {
|
pub fn finish(self) -> (TreeArc<SyntaxNode>, Vec<SyntaxError>) {
|
||||||
let (green, _errors) = self.finish_raw();
|
let (green, errors) = self.finish_raw();
|
||||||
let node = SyntaxNode::new(green);
|
let node = SyntaxNode::new(green);
|
||||||
if cfg!(debug_assertions) {
|
if cfg!(debug_assertions) {
|
||||||
crate::validation::validate_block_structure(&node);
|
crate::validation::validate_block_structure(&node);
|
||||||
}
|
}
|
||||||
node
|
(node, errors)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn token(&mut self, kind: SyntaxKind, text: SmolStr) {
|
pub fn token(&mut self, kind: SyntaxKind, text: SmolStr) {
|
||||||
|
Loading…
Reference in New Issue
Block a user