diff options
Diffstat (limited to 'cli/ops/os.rs')
-rw-r--r-- | cli/ops/os.rs | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/cli/ops/os.rs b/cli/ops/os.rs index ab7ed2876..77c547362 100644 --- a/cli/ops/os.rs +++ b/cli/ops/os.rs @@ -20,6 +20,7 @@ pub fn init(i: &mut CoreIsolate, s: &State) { i.register_op("op_hostname", s.stateful_json_op(op_hostname)); i.register_op("op_loadavg", s.stateful_json_op(op_loadavg)); i.register_op("op_os_release", s.stateful_json_op(op_os_release)); + i.register_op("op_name", s.stateful_json_op(op_name)); } #[derive(Deserialize)] @@ -206,3 +207,14 @@ fn op_os_release( let release = sys_info::os_release().unwrap_or_else(|_| "".to_string()); Ok(JsonOp::Sync(json!(release))) } + +fn op_name( + state: &State, + _args: Value, + _zero_copy: &mut [ZeroCopyBuf], +) -> Result<JsonOp, OpError> { + state.check_unstable("Deno.osName"); + state.check_env()?; + let os_name = sys_info::os_type().unwrap_or_else(|_| "".to_string()); + Ok(JsonOp::Sync(json!(os_name))) +} |