A reader over an admitted archive. More...
#include <archive.hpp>
Public Member Functions | |
| CapsuleArchive (CapsuleArchive &&) noexcept | |
| CapsuleArchive & | operator= (CapsuleArchive &&) noexcept |
| CapsuleArchive (const CapsuleArchive &)=delete | |
| CapsuleArchive & | operator= (const CapsuleArchive &)=delete |
| ~CapsuleArchive () | |
| std::span< const MemberInfo > | members () const noexcept |
| Members in archive order. The manifest is always index 0. | |
| std::span< const std::uint8_t > | manifest_bytes () const noexcept |
| The bounded root manifest bytes. | |
| runtime::Result< std::vector< std::uint8_t >, CapsuleError > | read (std::string_view path) const |
| Expand one member. | |
| std::uint64_t | peak_bytes () const noexcept |
| Peak bytes charged so far. | |
Friends | |
| runtime::Result< CapsuleArchive, CapsuleError > | open_archive (const std::filesystem::path &path, const CapsuleLimits &limits=kCapsuleLimitsV1) |
A reader over an admitted archive.
Construction validates the container shape — budgets, methods, paths, collisions, manifest position — but does not expand any member and never executes anything.
|
noexcept |
|
delete |
| pulp::authoring_capsule::CapsuleArchive::~CapsuleArchive | ( | ) |
|
noexcept |
The bounded root manifest bytes.
Available without expanding anything else, which is what makes preview cheap and safe.
|
noexcept |
Members in archive order. The manifest is always index 0.
|
noexcept |
|
delete |
|
noexcept |
Peak bytes charged so far.
Reported in receipts so a budget regression is visible rather than inferred.
| runtime::Result< std::vector< std::uint8_t >, CapsuleError > pulp::authoring_capsule::CapsuleArchive::read | ( | std::string_view | path | ) | const |
Expand one member.
Charges the working-set budget; returns archive_budget_exceeded rather than allocating past it.
|
friend |