diff options
Diffstat (limited to 'cli/tsc')
-rw-r--r-- | cli/tsc/99_main_compiler.js | 17 | ||||
-rw-r--r-- | cli/tsc/mod.rs | 15 |
2 files changed, 19 insertions, 13 deletions
diff --git a/cli/tsc/99_main_compiler.js b/cli/tsc/99_main_compiler.js index 0677b4c27..836d81f87 100644 --- a/cli/tsc/99_main_compiler.js +++ b/cli/tsc/99_main_compiler.js @@ -681,7 +681,8 @@ delete Object.prototype.__proto__; debug(`host.writeFile("${fileName}")`); } return ops.op_emit( - { fileName, data }, + data, + fileName, ); }, getCurrentDirectory() { @@ -717,10 +718,10 @@ delete Object.prototype.__proto__; : arg; if (fileReference.fileName.startsWith("npm:")) { /** @type {[string, ts.Extension] | undefined} */ - const resolved = ops.op_resolve({ - specifiers: [fileReference.fileName], - base: containingFilePath, - })?.[0]; + const resolved = ops.op_resolve( + containingFilePath, + [fileReference.fileName], + )?.[0]; if (resolved) { isCjsCache.maybeAdd(resolved); return { @@ -750,10 +751,10 @@ delete Object.prototype.__proto__; debug(` specifiers: ${specifiers.join(", ")}`); } /** @type {Array<[string, ts.Extension] | undefined>} */ - const resolved = ops.op_resolve({ - specifiers, + const resolved = ops.op_resolve( base, - }); + specifiers, + ); if (resolved) { const result = resolved.map((item) => { if (item) { diff --git a/cli/tsc/mod.rs b/cli/tsc/mod.rs index 81ea1642d..57e7dff56 100644 --- a/cli/tsc/mod.rs +++ b/cli/tsc/mod.rs @@ -412,9 +412,13 @@ struct EmitArgs { file_name: String, } -#[op2] -fn op_emit(state: &mut OpState, #[serde] args: EmitArgs) -> bool { - op_emit_inner(state, args) +#[op2(fast)] +fn op_emit( + state: &mut OpState, + #[string] data: String, + #[string] file_name: String, +) -> bool { + op_emit_inner(state, EmitArgs { data, file_name }) } #[inline] @@ -590,9 +594,10 @@ pub struct ResolveArgs { #[serde] fn op_resolve( state: &mut OpState, - #[serde] args: ResolveArgs, + #[string] base: String, + #[serde] specifiers: Vec<String>, ) -> Result<Vec<(String, String)>, AnyError> { - op_resolve_inner(state, args) + op_resolve_inner(state, ResolveArgs { base, specifiers }) } #[inline] |