Skip to content

std:interop

Canonical occurrence: protos/lib/interop.protos · Protos revision: e99b712ecf658a527b1fe82c8beba2c1286d8dc9.

Explicit operations on foreign values the program already possesses: a raw foreign reference or a provider facade presenting a foreign target. Each operation acts on the underlying foreign target, under the provider, session, and generation already associated with it.

Importing this module creates no provider session or Context, performs no discovery or acquisition, and confers no authority. None of its operations changes ordinary Protos lookup, member read, assignment, call, at, atPut, each, identity, equality, or hashing of foreign values.

Arguments and written values cross into the foreign operation only when they project losslessly; a Closure crosses only as a synchronous callback scoped to that one operation. Normal results are admitted as for ordinary foreign access. A failure detected before the foreign operation is entered (a value that is not foreign, wrong arity, a name that is not a String, an operation the target does not support, an argument that cannot be projected, or a closed session) signals an ordinary Error. A failure after entry signals a fresh ForeignError.

This page lists the complete mechanically observable top-level slot inventory required by D067. Authored documentation, when present, is canonical D062 prose; mechanical presence alone does not create a stability or compatibility promise.

Explicitly instantiates the foreign target of target with arguments and answers its admitted result. This is distinct from invoke; it applies even when the target is also executable.

No callable shape is mechanically recorded for this slot.

Explicitly executes the foreign target of target with arguments and answers its admitted result. This is foreign execution, not ordinary call: it applies even when the target is also instantiable.

No callable shape is mechanically recorded for this slot.

Answers the admitted value of the foreign member name, which must be a String, of the foreign target of target. Ordinary Protos precedence is bypassed for this operation only, so foreign members such as call, at, each, ==, or hash are reachable; target.name is unchanged.

No callable shape is mechanically recorded for this slot.

Sets the foreign member name, which must be a String, of the foreign target of target to value and answers exactly value. Nothing is read back. Ordinary assignment target.name = value never writes a foreign member.

No callable shape is mechanically recorded for this slot.

Exact module source · Standard-library API · Standard library overview