载入中...
搜索中...
未找到
SquirrelBinding.h
浏览该文件的文档.
50[[nodiscard]] EVENGINE_API_FOUNDATION Result<Value> valueFromSquirrel(HSQUIRRELVM vm, SQInteger index,
74[[nodiscard]] EVENGINE_API_FOUNDATION ssq::Table projectDiagnostic(HSQUIRRELVM vm, const Diagnostic& diagnostic);
77[[nodiscard]] EVENGINE_API_FOUNDATION ssq::Table projectStatus(HSQUIRRELVM vm, const Status& status);
96[[nodiscard]] EVENGINE_API_FOUNDATION ssq::Table projectStatusResult(HSQUIRRELVM vm, const Status& status,
107[[nodiscard]] EVENGINE_API_FOUNDATION ssq::Table projectStatusResult(HSQUIRRELVM vm, const Status& status,
132[[nodiscard]] ssq::Table projectResult(HSQUIRRELVM vm, Result<T>&& result, Projector&& projector) {
138 return projectStatusResult(vm, status, std::invoke(std::forward<Projector>(projector), std::move(payload)));
142[[nodiscard]] EVENGINE_API_FOUNDATION ssq::Table projectResult(HSQUIRRELVM vm, Result<void>&& result);
150[[nodiscard]] EVENGINE_API_FOUNDATION bool ignoreResult(const ssq::Object& result, const std::string& reason);
#define EVENGINE_API_FOUNDATION_INLINE
仅供"只有内联成员"的类型使用的组宏:拥有者 dllexport,消费方不导入。
Definition Export.h:170
Move-only, checked operation results for the common layer.
Owning, renderer-independent dynamic values.
Definition BindingContracts.h:5
bool ignoreResult(const ssq::Object &result, const std::string &reason)
Mark a projected Result table as intentionally ignored by script.
Definition SquirrelBinding.cpp:475
ssq::Table projectDiagnostic(HSQUIRRELVM vm, const Diagnostic &diagnostic)
Project one Diagnostic using the common script table schema.
Definition SquirrelBinding.cpp:386
Result< void > pushValue(HSQUIRRELVM vm, const Value &value, const SquirrelValueOptions &options)
Push a canonical Value into the active Squirrel VM.
Definition SquirrelBinding.cpp:369
void markResultHasValue(ssq::Table &result)
Declare that a projected table received a payload the caller attached itself.
Definition SquirrelBinding.cpp:468
ssq::Table projectStatus(HSQUIRRELVM vm, const Status &status)
Project one Status using the common script table schema.
Definition SquirrelBinding.cpp:450
ssq::Table projectStatusResult(HSQUIRRELVM vm, const Status &status)
Project a checked native status that carries no payload.
Definition SquirrelBinding.cpp:454
ssq::Table projectResult(HSQUIRRELVM vm, Result< void > &&result)
Consume and project a void native Result using the common schema.
Definition SquirrelBinding.cpp:470
void exposeResultBindings(ssq::Table &eveTable)
Expose the common script helpers under eve.result.
Definition SquirrelBinding.cpp:505
Result< Value > valueFromSquirrel(HSQUIRRELVM vm, SQInteger index, const SquirrelValueOptions &options)
Convert one Squirrel value into the canonical owning Value tree.
Definition SquirrelBinding.cpp:342
Limits and provenance used by the Squirrel ↔ Value adapter.
Definition SquirrelBinding.h:35