diff options
Diffstat (limited to 'vendor/annotate-snippets-0.8.0/examples')
4 files changed, 181 insertions, 0 deletions
diff --git a/vendor/annotate-snippets-0.8.0/examples/expected_type.rs b/vendor/annotate-snippets-0.8.0/examples/expected_type.rs new file mode 100644 index 000000000..89f0ddc11 --- /dev/null +++ b/vendor/annotate-snippets-0.8.0/examples/expected_type.rs @@ -0,0 +1,43 @@ +use annotate_snippets::{ + display_list::{DisplayList, FormatOptions}, + snippet::{Annotation, AnnotationType, Slice, Snippet, SourceAnnotation}, +}; + +fn main() { + let snippet = Snippet { + title: Some(Annotation { + label: Some("expected type, found `22`"), + id: None, + annotation_type: AnnotationType::Error, + }), + footer: vec![], + slices: vec![Slice { + source: r#" annotations: vec![SourceAnnotation { + label: "expected struct `annotate_snippets::snippet::Slice`, found reference" + , + range: <22, 25>,"#, + line_start: 26, + origin: Some("examples/footer.rs"), + fold: true, + annotations: vec![ + SourceAnnotation { + label: "", + annotation_type: AnnotationType::Error, + range: (205, 207), + }, + SourceAnnotation { + label: "while parsing this struct", + annotation_type: AnnotationType::Info, + range: (34, 50), + }, + ], + }], + opt: FormatOptions { + color: true, + ..Default::default() + }, + }; + + let dl = DisplayList::from(snippet); + println!("{}", dl); +} diff --git a/vendor/annotate-snippets-0.8.0/examples/footer.rs b/vendor/annotate-snippets-0.8.0/examples/footer.rs new file mode 100644 index 000000000..f3c15c410 --- /dev/null +++ b/vendor/annotate-snippets-0.8.0/examples/footer.rs @@ -0,0 +1,39 @@ +use annotate_snippets::{ + display_list::{DisplayList, FormatOptions}, + snippet::{Annotation, AnnotationType, Slice, Snippet, SourceAnnotation}, +}; + +fn main() { + let snippet = Snippet { + title: Some(Annotation { + label: Some("mismatched types"), + id: Some("E0308"), + annotation_type: AnnotationType::Error, + }), + footer: vec![Annotation { + label: Some( + "expected type: `snippet::Annotation`\n found type: `__&__snippet::Annotation`", + ), + id: None, + annotation_type: AnnotationType::Note, + }], + slices: vec![Slice { + source: " slices: vec![\"A\",", + line_start: 13, + origin: Some("src/multislice.rs"), + fold: false, + annotations: vec![SourceAnnotation { + label: "expected struct `annotate_snippets::snippet::Slice`, found reference", + range: (21, 24), + annotation_type: AnnotationType::Error, + }], + }], + opt: FormatOptions { + color: true, + ..Default::default() + }, + }; + + let dl = DisplayList::from(snippet); + println!("{}", dl); +} diff --git a/vendor/annotate-snippets-0.8.0/examples/format.rs b/vendor/annotate-snippets-0.8.0/examples/format.rs new file mode 100644 index 000000000..98b77a140 --- /dev/null +++ b/vendor/annotate-snippets-0.8.0/examples/format.rs @@ -0,0 +1,61 @@ +use annotate_snippets::{ + display_list::{DisplayList, FormatOptions}, + snippet::{Annotation, AnnotationType, Slice, Snippet, SourceAnnotation}, +}; + +fn main() { + let snippet = Snippet { + slices: vec![Slice { + source: r#") -> Option<String> { + for ann in annotations { + match (ann.range.0, ann.range.1) { + (None, None) => continue, + (Some(start), Some(end)) if start > end_index => continue, + (Some(start), Some(end)) if start >= start_index => { + let label = if let Some(ref label) = ann.label { + format!(" {}", label) + } else { + String::from("") + }; + + return Some(format!( + "{}{}{}", + " ".repeat(start - start_index), + "^".repeat(end - start), + label + )); + } + _ => continue, + } + }"#, + line_start: 51, + origin: Some("src/format.rs"), + fold: false, + annotations: vec![ + SourceAnnotation { + label: "expected `Option<String>` because of return type", + annotation_type: AnnotationType::Warning, + range: (5, 19), + }, + SourceAnnotation { + label: "expected enum `std::option::Option`", + annotation_type: AnnotationType::Error, + range: (26, 724), + }, + ], + }], + title: Some(Annotation { + label: Some("mismatched types"), + id: Some("E0308"), + annotation_type: AnnotationType::Error, + }), + footer: vec![], + opt: FormatOptions { + color: true, + ..Default::default() + }, + }; + + let dl = DisplayList::from(snippet); + println!("{}", dl); +} diff --git a/vendor/annotate-snippets-0.8.0/examples/multislice.rs b/vendor/annotate-snippets-0.8.0/examples/multislice.rs new file mode 100644 index 000000000..5675a07da --- /dev/null +++ b/vendor/annotate-snippets-0.8.0/examples/multislice.rs @@ -0,0 +1,38 @@ +use annotate_snippets::{ + display_list::{DisplayList, FormatOptions}, + snippet::{Annotation, AnnotationType, Slice, Snippet}, +}; + +fn main() { + let snippet = Snippet { + title: Some(Annotation { + label: Some("mismatched types"), + id: None, + annotation_type: AnnotationType::Error, + }), + footer: vec![], + slices: vec![ + Slice { + source: "Foo", + line_start: 51, + origin: Some("src/format.rs"), + fold: false, + annotations: vec![], + }, + Slice { + source: "Faa", + line_start: 129, + origin: Some("src/display.rs"), + fold: false, + annotations: vec![], + }, + ], + opt: FormatOptions { + color: true, + ..Default::default() + }, + }; + + let dl = DisplayList::from(snippet); + println!("{}", dl); +} |