diff options
Diffstat (limited to 'cli/ast.rs')
-rw-r--r-- | cli/ast.rs | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/cli/ast.rs b/cli/ast.rs index 95f243717..78cafca1b 100644 --- a/cli/ast.rs +++ b/cli/ast.rs @@ -72,6 +72,18 @@ impl Into<Location> for swc_common::Loc { } } +impl Into<ModuleSpecifier> for Location { + fn into(self) -> ModuleSpecifier { + ModuleSpecifier::resolve_url_or_path(&self.filename).unwrap() + } +} + +impl std::fmt::Display for Location { + fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { + write!(f, "{}:{}:{}", self.filename, self.line, self.col) + } +} + /// A buffer for collecting diagnostic messages from the AST parser. #[derive(Debug)] pub struct DiagnosticBuffer(Vec<String>); |