summaryrefslogtreecommitdiff
path: root/cli/lsp/documents.rs
diff options
context:
space:
mode:
Diffstat (limited to 'cli/lsp/documents.rs')
-rw-r--r--cli/lsp/documents.rs12
1 files changed, 11 insertions, 1 deletions
diff --git a/cli/lsp/documents.rs b/cli/lsp/documents.rs
index 5e08245cb..45903fa21 100644
--- a/cli/lsp/documents.rs
+++ b/cli/lsp/documents.rs
@@ -139,12 +139,22 @@ impl DocumentData {
Ok(None)
}
}
+
+ pub fn content_line(&self, line: usize) -> Result<Option<String>, AnyError> {
+ let content = self.content().ok().flatten();
+ if let Some(content) = content {
+ let lines = content.lines().into_iter().collect::<Vec<&str>>();
+ Ok(Some(lines[line].to_string()))
+ } else {
+ Ok(None)
+ }
+ }
}
#[derive(Debug, Clone, Default)]
pub struct DocumentCache {
dependents_graph: HashMap<ModuleSpecifier, HashSet<ModuleSpecifier>>,
- docs: HashMap<ModuleSpecifier, DocumentData>,
+ pub docs: HashMap<ModuleSpecifier, DocumentData>,
}
impl DocumentCache {