feat: create scoped language functions from native calls

This commit is contained in:
2026-10-21 02:19:30 +08:00
parent be9a032647
commit 2b5539cd06
4 changed files with 17 additions and 2 deletions
+1
View File
@@ -12,6 +12,7 @@ Arc<dyn NativeCallable>;VM 先取得独立分派器,再可变访问 ObjectSt
NativeCallable::invoke 接收 NativeContext 和借用参数。context 提供对象、字典、Cell
分配、托管属性和容器写入、载荷事务替换及弱引用升级。store() 仅暴露只读访问;
callee() 返回当前可调用对象的借用句柄;attach_type 通过受校验的类型边事务附加实例类型。
new_function(name, code, globals) 可在当前作用域创建无默认参数、无闭包的语言函数;代码与 globals 使用现有 ObjectStore 校验,函数临时根随作用域管理。宿主可生成受静态验证的字节码来顺序调用多个处理器,再通过 Invoke 移交同一帧循环;这些调用继续共用当前预算,不逐个重置限额。
没有不受控的 &mut Vm、手动释放根或重入执行器入口。
context 内分配或升级得到的对象由本次作用域临时持有。NativeResult::Return(value)