summaryrefslogtreecommitdiff
path: root/cli/ast.rs
diff options
context:
space:
mode:
Diffstat (limited to 'cli/ast.rs')
-rw-r--r--cli/ast.rs12
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>);