aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_editor/src/lib.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/ra_editor/src/lib.rs')
-rw-r--r--crates/ra_editor/src/lib.rs18
1 files changed, 3 insertions, 15 deletions
diff --git a/crates/ra_editor/src/lib.rs b/crates/ra_editor/src/lib.rs
index fe0045378..906ee11fe 100644
--- a/crates/ra_editor/src/lib.rs
+++ b/crates/ra_editor/src/lib.rs
@@ -88,7 +88,6 @@ pub fn highlight(file: &File) -> Vec<HighlightedRange> {
88 let mut res = Vec::new(); 88 let mut res = Vec::new();
89 for node in file.syntax().descendants() { 89 for node in file.syntax().descendants() {
90 let tag = match node.kind() { 90 let tag = match node.kind() {
91 ERROR => "error",
92 COMMENT | DOC_COMMENT => "comment", 91 COMMENT | DOC_COMMENT => "comment",
93 STRING | RAW_STRING | RAW_BYTE_STRING | BYTE_STRING => "string", 92 STRING | RAW_STRING | RAW_BYTE_STRING | BYTE_STRING => "string",
94 ATTR => "attribute", 93 ATTR => "attribute",
@@ -108,21 +107,10 @@ pub fn highlight(file: &File) -> Vec<HighlightedRange> {
108} 107}
109 108
110pub fn diagnostics(file: &File) -> Vec<Diagnostic> { 109pub fn diagnostics(file: &File) -> Vec<Diagnostic> {
111 let mut res = Vec::new(); 110 file.errors().into_iter().map(|err| Diagnostic {
112
113 for node in file.syntax().descendants() {
114 if node.kind() == ERROR {
115 res.push(Diagnostic {
116 range: node.range(),
117 msg: "Syntax Error".to_string(),
118 });
119 }
120 }
121 res.extend(file.errors().into_iter().map(|err| Diagnostic {
122 range: TextRange::offset_len(err.offset, 1.into()), 111 range: TextRange::offset_len(err.offset, 1.into()),
123 msg: err.msg, 112 msg: "Syntax Error: ".to_string() + &err.msg,
124 })); 113 }).collect()
125 res
126} 114}
127 115
128pub fn syntax_tree(file: &File) -> String { 116pub fn syntax_tree(file: &File) -> String {