Report errors only once

This commit is contained in:
Adolfo Ochagavía 2018-10-10 16:59:46 +02:00
parent 26d34cc443
commit edd162bda8

View file

@ -107,21 +107,10 @@ pub fn highlight(file: &File) -> Vec<HighlightedRange> {
}
pub fn diagnostics(file: &File) -> Vec<Diagnostic> {
let mut res = Vec::new();
for node in file.syntax().descendants() {
if node.kind() == ERROR {
res.push(Diagnostic {
range: node.range(),
msg: "Syntax Error".to_string(),
});
}
}
res.extend(file.errors().into_iter().map(|err| Diagnostic {
file.errors().into_iter().map(|err| Diagnostic {
range: TextRange::offset_len(err.offset, 1.into()),
msg: err.msg,
}));
res
msg: "Syntax Error: ".to_string() + &err.msg,
}).collect()
}
pub fn syntax_tree(file: &File) -> String {