Skip to content

API Host BondingFunction

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

BondingFunction

ClrDatumDelegate 包装为脚本可调用函数的对象。

Script callable wrapper for a ClrDatumDelegate.

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

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

返回 .NET Host API 参考

Back to .NET Host API Reference

用途

Purpose

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

Script callable wrapper for a ClrDatumDelegate.

注意

简单的宿主函数通常直接将普通 CLR delegate 传给 ScriptGlobal.Define,这样更方便。

For simple host functions, passing a normal CLR delegate to ScriptGlobal.Define is usually easier.

简单示例

Simple Example

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

A minimal use of BondingFunction.

ClrDatumDelegate answer = (
    ScriptContext ctx,
    ScriptObject module,
    Span<ScriptDatum> args,
    ref ScriptDatum result) =>
{
    result = ScriptDatum.FromNumber(42);
};

var function = new BondingFunction(answer);

成员

Members

BondingFunction(ClrDatumDelegate callback)

创建 BondingFunction 实例。

Use the member according to its public signature.

Parameters:

  • callback
    由运行时调用的回调。

    Callback invoked by the runtime.

Returns

新建的 BondingFunction 实例。

A new BondingFunction instance.

调用示意

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

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

var value = new BondingFunction(/* 参数 */);

ScriptObject Target

读取 Target 字段。

Use the member according to its public signature.

Parameters:

  • 无。

    None.

Returns

返回 ScriptObject

Returns ScriptObject.

调用示意

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

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

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

ClrDatumDelegate DatumMethod

读取 DatumMethod 字段。

Use the member according to its public signature.

Parameters:

  • 无。

    None.

Returns

返回 ClrDatumDelegate

Returns ClrDatumDelegate.

调用示意

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

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

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

BondingFunction Bind(ScriptObject target)

调用 Bind 完成其公开操作。

Use the member according to its public signature.

Parameters:

  • target
    操作的目标对象。

    Target object for the operation.

Returns

返回 BondingFunction

Returns BondingFunction.

调用示意

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

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

BondingFunction value = /* 从宿主 API 获取实例 */;
var result = value.Bind(/* target */);

string Name

读取 Name 属性。

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.

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

Clone this wiki locally