summaryrefslogtreecommitdiff
path: root/src/source.rs
diff options
context:
space:
mode:
authorLaurenz <laurmaedje@gmail.com>2022-01-31 16:06:44 +0100
committerLaurenz <laurmaedje@gmail.com>2022-01-31 16:47:00 +0100
commit20b1a38414101f842a6d9201133a5aaaa45a7cec (patch)
tree2365453d4dfdebfa11d618baad1a36c65b62d7c7 /src/source.rs
parentfa57d86ed981373b66804972147bf59cab920e6b (diff)
Switch from `Rc` to `Arc`
Diffstat (limited to 'src/source.rs')
-rw-r--r--src/source.rs10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/source.rs b/src/source.rs
index fd42c3f7..0e7b4c63 100644
--- a/src/source.rs
+++ b/src/source.rs
@@ -4,7 +4,7 @@ use std::collections::HashMap;
use std::io;
use std::ops::Range;
use std::path::{Path, PathBuf};
-use std::rc::Rc;
+use std::sync::Arc;
use crate::diag::TypResult;
use crate::loading::{FileHash, Loader};
@@ -37,14 +37,14 @@ impl SourceId {
/// Storage for loaded source files.
pub struct SourceStore {
- loader: Rc<dyn Loader>,
+ loader: Arc<dyn Loader>,
files: HashMap<FileHash, SourceId>,
sources: Vec<SourceFile>,
}
impl SourceStore {
/// Create a new, empty source store.
- pub fn new(loader: Rc<dyn Loader>) -> Self {
+ pub fn new(loader: Arc<dyn Loader>) -> Self {
Self {
loader,
files: HashMap::new(),
@@ -125,7 +125,7 @@ pub struct SourceFile {
path: PathBuf,
src: String,
lines: Vec<Line>,
- root: Rc<GreenNode>,
+ root: Arc<GreenNode>,
}
impl SourceFile {
@@ -148,7 +148,7 @@ impl SourceFile {
}
/// The root node of the file's untyped green tree.
- pub fn root(&self) -> &Rc<GreenNode> {
+ pub fn root(&self) -> &Arc<GreenNode> {
&self.root
}