summaryrefslogtreecommitdiff
path: root/runtime/shared.rs
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/shared.rs')
-rw-r--r--runtime/shared.rs33
1 files changed, 17 insertions, 16 deletions
diff --git a/runtime/shared.rs b/runtime/shared.rs
index 04fcdcfdb..fc91be145 100644
--- a/runtime/shared.rs
+++ b/runtime/shared.rs
@@ -7,8 +7,9 @@ use deno_ast::SourceTextInfo;
use deno_core::error::AnyError;
use deno_core::extension;
use deno_core::Extension;
-use deno_core::ExtensionFileSource;
-use deno_core::ExtensionFileSourceCode;
+use deno_core::ModuleCodeString;
+use deno_core::ModuleName;
+use deno_core::SourceMapData;
use std::path::Path;
extension!(runtime,
@@ -56,36 +57,38 @@ extension!(runtime,
customizer = |ext: &mut Extension| {
#[cfg(not(feature = "exclude_runtime_main_js"))]
{
- ext.esm_files.to_mut().push(ExtensionFileSource::new("ext:runtime_main/js/99_main.js", include_str!("./js/99_main.js")));
+ use deno_core::ascii_str_include;
+ use deno_core::ExtensionFileSource;
+ ext.esm_files.to_mut().push(ExtensionFileSource::new("ext:runtime_main/js/99_main.js", ascii_str_include!("./js/99_main.js")));
ext.esm_entry_point = Some("ext:runtime_main/js/99_main.js");
}
}
);
pub fn maybe_transpile_source(
- source: &mut ExtensionFileSource,
-) -> Result<(), AnyError> {
+ name: ModuleName,
+ source: ModuleCodeString,
+) -> Result<(ModuleCodeString, Option<SourceMapData>), AnyError> {
// Always transpile `node:` built-in modules, since they might be TypeScript.
- let media_type = if source.specifier.starts_with("node:") {
+ let media_type = if name.starts_with("node:") {
MediaType::TypeScript
} else {
- MediaType::from_path(Path::new(&source.specifier))
+ MediaType::from_path(Path::new(&name))
};
match media_type {
MediaType::TypeScript => {}
- MediaType::JavaScript => return Ok(()),
- MediaType::Mjs => return Ok(()),
+ MediaType::JavaScript => return Ok((source, None)),
+ MediaType::Mjs => return Ok((source, None)),
_ => panic!(
"Unsupported media type for snapshotting {media_type:?} for file {}",
- source.specifier
+ name
),
}
- let code = source.load()?;
let parsed = deno_ast::parse_module(ParseParams {
- specifier: deno_core::url::Url::parse(source.specifier).unwrap(),
- text_info: SourceTextInfo::from_string(code.as_str().to_owned()),
+ specifier: deno_core::url::Url::parse(&name).unwrap(),
+ text_info: SourceTextInfo::from_string(source.as_str().to_owned()),
media_type,
capture_tokens: false,
scope_analysis: false,
@@ -97,7 +100,5 @@ pub fn maybe_transpile_source(
..Default::default()
})?;
- source.code =
- ExtensionFileSourceCode::Computed(transpiled_source.text.into());
- Ok(())
+ Ok((transpiled_source.text.into(), None))
}