From f0f8aa9e05726bfbc065fa2504daf3232f29bc03 Mon Sep 17 00:00:00 2001 From: Matthew Russo Date: Tue, 4 Dec 2018 15:18:03 -0500 Subject: adds DocTest filename variant, refactors doctest_offset out of source_map, fixes remaining test failures --- src/libsyntax_pos/lib.rs | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'src/libsyntax_pos') diff --git a/src/libsyntax_pos/lib.rs b/src/libsyntax_pos/lib.rs index ff3c1cf9f47..4d42b85ea75 100644 --- a/src/libsyntax_pos/lib.rs +++ b/src/libsyntax_pos/lib.rs @@ -103,6 +103,7 @@ pub enum FileName { CliCrateAttr(u64), /// Custom sources for explicit parser calls from plugins and drivers Custom(String), + DocTest(PathBuf, isize), } impl std::fmt::Display for FileName { @@ -119,6 +120,7 @@ impl std::fmt::Display for FileName { CfgSpec(_) => write!(fmt, ""), CliCrateAttr(_) => write!(fmt, ""), Custom(ref s) => write!(fmt, "<{}>", s), + DocTest(ref path, _) => write!(fmt, "{}", path.display()), } } } @@ -142,7 +144,8 @@ impl FileName { CfgSpec(_) | CliCrateAttr(_) | Custom(_) | - QuoteExpansion(_) => false, + QuoteExpansion(_) | + DocTest(_, _) => false, } } @@ -156,7 +159,8 @@ impl FileName { CfgSpec(_) | CliCrateAttr(_) | Custom(_) | - QuoteExpansion(_) => false, + QuoteExpansion(_) | + DocTest(_, _) => false, Macros(_) => true, } } @@ -196,6 +200,10 @@ impl FileName { src.hash(&mut hasher); FileName::CliCrateAttr(hasher.finish()) } + + pub fn doc_test_source_code(path: PathBuf, line: isize) -> FileName{ + FileName::DocTest(path, line) + } } /// Spans represent a region of code, used for error reporting. Positions in spans -- cgit 1.4.1-3-g733a5