载入中...
搜索中...
未找到
EvpackResourceReader.cpp
浏览该文件的文档.
31 if (decodedTotal > maximumDecodedBytes || chunk.decodedSize > maximumDecodedBytes - decodedTotal)
45 Diagnostic::error(DiagnosticCode::TypeMismatch, "asset does not provide the expected type/version",
51 return Result<RuntimeAssetPayload>::failure(Diagnostic::error(DiagnosticCode::NotFound, "asset is not present",
65 std::string_view expectedType, const EvpackCapabilities& capabilities, std::uint32_t maximumAssets) const {
68 Diagnostic::error(DiagnosticCode::InvalidArgument, "pack, expected type and asset budget are required", {},
83 DiagnosticCode::InvalidArgument, "asset listing exceeds result budget", {}, {}, "asset.evpack.reader"));
Typed capability-aware runtime access to admitted packs.
const PersistentId & id() const noexcept
Return the stable asset identity.
Definition ResourceRef.h:65
static Result< AssetRef > fromId(PersistentId id)
Build an asset reference from a non-nil persistent identity.
Definition ResourceRef.cpp:26
static Diagnostic error(DiagnosticCode code, std::string message, std::string path={}, DiagnosticDetails details={}, std::string source={})
Construct an error diagnostic with the standard error severity.
Definition Diagnostic.h:125
static Result failure(Status status)
Construct a failed result from a structured status.
Definition Result.h:175
Result< std::vector< AssetRef > > listAssets(std::string_view expectedType, const EvpackCapabilities &capabilities, std::uint32_t maximumAssets=1 '000 '000) const
List stable assets providing an exact type/version for the selected runtime variant.
Definition EvpackResourceReader.cpp:64
Result< RuntimeAssetPayload > read(const AssetRef &asset, std::string_view expectedType, const EvpackCapabilities &capabilities, std::uint64_t maximumDecodedBytes) const
Resolve, type-check, variant-select and decode a canonical runtime asset.
Definition EvpackResourceReader.cpp:10
constexpr bool isNil() const noexcept
Returns whether this value is the all-zero nil ID.
Definition Identity.h:176
Definition AssetCooker.cpp:17
Result< EvpackVariantSelection > selectEvpackVariant(const Evpack &pack, const EvpackCapabilities &capabilities)
Select the first explicitly ordered variant satisfied by device capabilities.
Definition Evpack.cpp:585
@ Definition
@ InvalidArgument
@ TypeMismatch
A stable reference resolved to a different canonical domain type.
@ NotFound
@ Unsupported
@ InvariantViolation
@ Failed
Actual runtime device capabilities used for variant selection.
Definition Evpack.h:92
Owning backend-neutral payload returned to a domain decoder.
Definition EvpackResourceReader.h:20