summaryrefslogtreecommitdiff
path: root/cli/ast.rs
diff options
context:
space:
mode:
authorBartek IwaƄczuk <biwanczuk@gmail.com>2020-10-26 14:03:03 +0100
committerGitHub <noreply@github.com>2020-10-26 14:03:03 +0100
commit57cad539457dff7fc273bed5ecaf08bd3dc40d1b (patch)
tree1b0c01aeaaf2c0a1723712d6b9b5baf91bfeecff /cli/ast.rs
parentaebbdd5cc2c75151be28c839878b0dee915147ef (diff)
refactor(cli): rewrite Deno.transpileOnly() to use SWC (#8090)
Co-authored-by: Kitson Kelly <me@kitsonkelly.com>
Diffstat (limited to 'cli/ast.rs')
-rw-r--r--cli/ast.rs18
1 files changed, 11 insertions, 7 deletions
diff --git a/cli/ast.rs b/cli/ast.rs
index 78cafca1b..44e5616e7 100644
--- a/cli/ast.rs
+++ b/cli/ast.rs
@@ -225,7 +225,7 @@ impl From<tsc_config::TsConfig> for EmitOptions {
EmitOptions {
check_js: options.check_js,
emit_metadata: options.emit_decorator_metadata,
- inline_source_map: true,
+ inline_source_map: options.inline_source_map,
jsx_factory: options.jsx_factory,
jsx_fragment_factory: options.jsx_fragment_factory,
transform_jsx: options.jsx == "react",
@@ -356,8 +356,11 @@ impl ParsedModule {
/// - `source` - The source code for the module.
/// - `media_type` - The media type for the module.
///
+// NOTE(bartlomieju): `specifier` has `&str` type instead of
+// `&ModuleSpecifier` because runtime compiler APIs don't
+// require valid module specifiers
pub fn parse(
- specifier: &ModuleSpecifier,
+ specifier: &str,
source: &str,
media_type: &MediaType,
) -> Result<ParsedModule, AnyError> {
@@ -505,8 +508,9 @@ mod tests {
let source = r#"import * as bar from "./test.ts";
const foo = await import("./foo.ts");
"#;
- let parsed_module = parse(&specifier, source, &MediaType::JavaScript)
- .expect("could not parse module");
+ let parsed_module =
+ parse(specifier.as_str(), source, &MediaType::JavaScript)
+ .expect("could not parse module");
let actual = parsed_module.analyze_dependencies();
assert_eq!(
actual,
@@ -553,7 +557,7 @@ mod tests {
}
}
"#;
- let module = parse(&specifier, source, &MediaType::TypeScript)
+ let module = parse(specifier.as_str(), source, &MediaType::TypeScript)
.expect("could not parse module");
let (code, maybe_map) = module
.transpile(&EmitOptions::default())
@@ -577,7 +581,7 @@ mod tests {
}
}
"#;
- let module = parse(&specifier, source, &MediaType::TSX)
+ let module = parse(specifier.as_str(), source, &MediaType::TSX)
.expect("could not parse module");
let (code, _) = module
.transpile(&EmitOptions::default())
@@ -608,7 +612,7 @@ mod tests {
}
}
"#;
- let module = parse(&specifier, source, &MediaType::TypeScript)
+ let module = parse(specifier.as_str(), source, &MediaType::TypeScript)
.expect("could not parse module");
let (code, _) = module
.transpile(&EmitOptions::default())