summaryrefslogtreecommitdiffstats
path: root/vendor/annotate-snippets-0.8.0/src/display_list/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/annotate-snippets-0.8.0/src/display_list/mod.rs')
-rw-r--r--vendor/annotate-snippets-0.8.0/src/display_list/mod.rs37
1 files changed, 37 insertions, 0 deletions
diff --git a/vendor/annotate-snippets-0.8.0/src/display_list/mod.rs b/vendor/annotate-snippets-0.8.0/src/display_list/mod.rs
new file mode 100644
index 000000000..224a9f580
--- /dev/null
+++ b/vendor/annotate-snippets-0.8.0/src/display_list/mod.rs
@@ -0,0 +1,37 @@
+//! display_list module stores the output model for the snippet.
+//!
+//! `DisplayList` is a central structure in the crate, which contains
+//! the structured list of lines to be displayed.
+//!
+//! It is made of two types of lines: `Source` and `Raw`. All `Source` lines
+//! are structured using four columns:
+//!
+//! ```text
+//! /------------ (1) Line number column.
+//! | /--------- (2) Line number column delimiter.
+//! | | /------- (3) Inline marks column.
+//! | | | /--- (4) Content column with the source and annotations for slices.
+//! | | | |
+//! =============================================================================
+//! error[E0308]: mismatched types
+//! --> src/format.rs:51:5
+//! |
+//! 151 | / fn test() -> String {
+//! 152 | | return "test";
+//! 153 | | }
+//! | |___^ error: expected `String`, for `&str`.
+//! |
+//! ```
+//!
+//! The first two lines of the example above are `Raw` lines, while the rest
+//! are `Source` lines.
+//!
+//! `DisplayList` does not store column alignment information, and those are
+//! only calculated by the implementation of `std::fmt::Display` using information such as
+//! styling.
+//!
+//! The above snippet has been built out of the following structure:
+mod from_snippet;
+mod structs;
+
+pub use self::structs::*;