diff options
Diffstat (limited to 'deno_typescript/ops.rs')
-rw-r--r-- | deno_typescript/ops.rs | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/deno_typescript/ops.rs b/deno_typescript/ops.rs index e45349591..d557b9b8c 100644 --- a/deno_typescript/ops.rs +++ b/deno_typescript/ops.rs @@ -112,6 +112,21 @@ pub fn resolve_module_names( #[derive(Debug, Deserialize)] #[serde(rename_all = "camelCase")] +struct FetchAssetArgs { + name: String, +} + +pub fn fetch_asset(_s: &mut TSState, v: Value) -> Result<Value, ErrBox> { + let args: FetchAssetArgs = serde_json::from_value(v)?; + if let Some(source_code) = crate::get_asset(&args.name) { + Ok(json!(source_code)) + } else { + panic!("op_fetch_asset bad asset {}", args.name) + } +} + +#[derive(Debug, Deserialize)] +#[serde(rename_all = "camelCase")] struct Exit { code: i32, } |