From 439b61e359e08a2199b78a41ce6950009a1b7db5 Mon Sep 17 00:00:00 2001 From: pjh456 <147148383@qq.com> Date: Sun, 7 Jun 2026 01:07:45 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=90=AD=E5=BB=BA=E5=8E=9F=E7=94=9F?= =?UTF-8?q?=E5=87=BD=E6=95=B0=E5=9F=BA=E7=A1=80=E8=AE=BE=E6=96=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Cargo.lock | 1 + crates/oxide_compiler/src/compiler.rs | 17 ++++++ crates/oxide_compiler/src/counter.rs | 3 +- crates/oxide_compiler/src/emitter.rs | 35 ++++++++++- crates/oxide_compiler/src/hash.rs | 9 ++- crates/oxide_compiler/src/module.rs | 1 + crates/oxide_compiler/src/symbol_table.rs | 7 +++ crates/oxide_kernel/Cargo.toml | 1 + crates/oxide_kernel/src/builtin.rs | 24 ++++++++ crates/oxide_kernel/src/kernel.rs | 29 ++++++++- crates/oxide_types/src/object.rs | 44 ++++++++++--- crates/oxide_vm/src/builtins/global.rs | 7 +++ crates/oxide_vm/src/builtins/mod.rs | 1 + crates/oxide_vm/src/lib.rs | 2 + crates/oxide_vm/src/native.rs | 5 ++ crates/oxide_vm/src/vm.rs | 61 +++++++++++++++++++ .../oxide_vm/tests/builtins_globals_tests.rs | 39 ++++++++++++ 17 files changed, 271 insertions(+), 15 deletions(-) create mode 100644 crates/oxide_vm/src/builtins/global.rs create mode 100644 crates/oxide_vm/src/builtins/mod.rs create mode 100644 crates/oxide_vm/src/native.rs create mode 100644 crates/oxide_vm/tests/builtins_globals_tests.rs diff --git a/Cargo.lock b/Cargo.lock index e7ad73e9..53b4d933 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -783,6 +783,7 @@ dependencies = [ name = "oxide_kernel" version = "0.1.0" dependencies = [ + "bumpalo", "dashmap", "hashbrown 0.14.5", "oxide_compiler", diff --git a/crates/oxide_compiler/src/compiler.rs b/crates/oxide_compiler/src/compiler.rs index 70c9874f..5db9a89d 100644 --- a/crates/oxide_compiler/src/compiler.rs +++ b/crates/oxide_compiler/src/compiler.rs @@ -57,6 +57,7 @@ pub(crate) struct CompileCtx { pub(crate) switch_stack: Vec