summaryrefslogtreecommitdiff
path: root/dhall
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--dhall/Cargo.toml2
-rw-r--r--dhall/src/error/builder.rs25
2 files changed, 14 insertions, 13 deletions
diff --git a/dhall/Cargo.toml b/dhall/Cargo.toml
index c8d0fc4..7923009 100644
--- a/dhall/Cargo.toml
+++ b/dhall/Cargo.toml
@@ -20,7 +20,7 @@ harness = false
path = "tests/spec.rs"
[dependencies]
-annotate-snippets = "0.7.0"
+annotate-snippets = "0.9.0"
hex = "0.4.2"
itertools = "0.9.0"
lazy_static = "1.4.0"
diff --git a/dhall/src/error/builder.rs b/dhall/src/error/builder.rs
index 3ee65fb..b659230 100644
--- a/dhall/src/error/builder.rs
+++ b/dhall/src/error/builder.rs
@@ -29,9 +29,9 @@ struct FreeAnnotation {
}
impl SpannedAnnotation {
- fn into_annotation(self) -> SourceAnnotation {
+ fn to_annotation(&self) -> SourceAnnotation<'_> {
SourceAnnotation {
- label: self.message,
+ label: &self.message,
annotation_type: self.annotation_type,
range: self.span.as_char_range(),
}
@@ -39,9 +39,9 @@ impl SpannedAnnotation {
}
impl FreeAnnotation {
- fn into_annotation(self) -> Annotation {
+ fn to_annotation(&self) -> Annotation<'_> {
Annotation {
- label: Some(self.message),
+ label: Some(&self.message),
id: None,
annotation_type: self.annotation_type,
}
@@ -124,31 +124,32 @@ impl ErrorBuilder {
self.consumed = true;
drop(self); // Get rid of the self reference so we don't use it by mistake.
+ let input;
let slices = if this.annotations.is_empty() {
Vec::new()
} else {
- let input = this.annotations[0].span.to_input();
+ input = this.annotations[0].span.to_input();
let annotations = this
.annotations
- .into_iter()
- .map(|annot| annot.into_annotation())
+ .iter()
+ .map(|annot| annot.to_annotation())
.collect();
vec![Slice {
- source: input,
+ source: &input,
line_start: 1, // TODO
- origin: Some("<current file>".to_string()),
+ origin: Some("<current file>"),
fold: true,
annotations,
}]
};
let footer = this
.footer
- .into_iter()
- .map(|annot| annot.into_annotation())
+ .iter()
+ .map(|annot| annot.to_annotation())
.collect();
let snippet = Snippet {
- title: Some(this.title.into_annotation()),
+ title: Some(this.title.to_annotation()),
slices,
footer,
opt: Default::default(),