Skip to content

API Host ClosureFunction

Liu.Yandong.Hanks edited this page Aug 19, 2026 · 3 revisions

ClosureFunction

GetMethod 或函数值属性返回的已编译脚本函数对象。

Compiled script function object returned by GetMethod and function-valued properties.

命名空间:AuroraScript.Runtime.Types。类型:class。

Namespace: AuroraScript.Runtime.Types. Kind: class.

返回 .NET Host API 参考

Back to .NET Host API Reference

用途

Purpose

ClosureFunction 是公开宿主类型。通过下方签名选择调用方式;对运行时对象、生命周期和异常,应由宿主在边界处明确处理。

Compiled script function object returned by GetMethod and function-valued properties.

简单示例

Simple Example

下面是 ClosureFunction 的最小使用方式。

A minimal use of ClosureFunction.

var run = domain.GetMethod("MAIN", "run");
if (run is not null)
{
    var result = run.InvokeClrDetached(ScriptDatum.FromNumber(20));
    Console.WriteLine(result);
}

成员

Members

string FuncName

读取 FuncName 字段。

Use the member according to its public signature.

Parameters:

  • 无。

    None.

Returns

返回 string

Returns string.

调用示意

以下示例展示调用形状;将占位实例和参数替换为宿主中的实际值。

The example shows the call shape; replace placeholder instances and arguments with actual host values.

ClosureFunction value = /* 从宿主 API 获取实例 */;
var current = value.FuncName;

ScriptModule Module

读取 Module 字段。

Use the member according to its public signature.

Parameters:

  • 无。

    None.

Returns

返回 ScriptModule

Returns ScriptModule.

调用示意

以下示例展示调用形状;将占位实例和参数替换为宿主中的实际值。

The example shows the call shape; replace placeholder instances and arguments with actual host values.

ClosureFunction value = /* 从宿主 API 获取实例 */;
var current = value.Module;

ScriptDatum InvokeClr(ScriptContext ctx, params ScriptDatum[] args)

调用 InvokeClr 完成其公开操作。

Invokes the closure using an active script context.

Parameters:

  • ctx
    当前脚本执行上下文。

    Current script execution context.

  • args
    传给脚本或回调的实参数组。

    Argument array passed to a script or callback.

Returns

返回 ScriptDatum

Returns ScriptDatum.

调用示意

以下示例展示调用形状;将占位实例和参数替换为宿主中的实际值。

The example shows the call shape; replace placeholder instances and arguments with actual host values.

ClosureFunction value = /* 从宿主 API 获取实例 */;
var result = value.InvokeClr(/* ctx */, /* args */);

InvokeClrDetached

签名

  • ScriptDatum InvokeClrDetached(params ScriptDatum[] args)
  • ScriptDatum InvokeClrDetached(ScriptObject userState, params ScriptDatum[] args)

调用 InvokeClrDetached 完成其公开操作。

Invokes the closure from a new root context; use for deferred or asynchronous host calls.

Parameters:

  • args
    传给脚本或回调的实参数组。

    Argument array passed to a script or callback.

  • userState
    与执行上下文关联的用户状态。

    User state associated with the execution context.

Returns

返回 ScriptDatum

Returns ScriptDatum.

调用示意

以下示例展示调用形状;将占位实例和参数替换为宿主中的实际值。

The example shows the call shape; replace placeholder instances and arguments with actual host values.

ClosureFunction value = /* 从宿主 API 获取实例 */;
var result = value.InvokeClrDetached(/* args */);

Clone this wiki locally