NGen
Loading...
Searching...
No Matches
ngen::serialization::FileBackend::Writer Class Reference
+ Inheritance diagram for ngen::serialization::FileBackend::Writer:
+ Collaboration diagram for ngen::serialization::FileBackend::Writer:

Public Member Functions

 Writer (std::shared_ptr< FileBackend > parent, Durability durability)
 
 ~Writer () override=default
 
auto write (const RecordView &rec) -> expected< void, BackendError > override
 Append a record to this checkpoint event.
 
auto commit () -> expected< void, BackendError > override
 Commit the event: flush pending writes, make them durable (under Durability::strict), surface deferred errors, run any collective barriers the backend requires.
 

Private Attributes

std::shared_ptr< FileBackend > parent_
 
Durability durability_
 

Constructor & Destructor Documentation

◆ Writer()

ngen::serialization::FileBackend::Writer::Writer ( std::shared_ptr< FileBackend > parent,
Durability durability )
inline

◆ ~Writer()

ngen::serialization::FileBackend::Writer::~Writer ( )
overridevirtualdefault

Member Function Documentation

◆ commit()

auto ngen::serialization::FileBackend::Writer::commit ( ) -> expected< void, BackendError >
inlineoverridevirtual

Commit the event: flush pending writes, make them durable (under Durability::strict), surface deferred errors, run any collective barriers the backend requires.

With Durability::relaxed, durability is best-effort and errors may not surface until the parent backend's finalize() call.

Implements ngen::serialization::RecordBackend::Writer.

References durability_, parent_, and ngen::serialization::strict.

◆ write()

auto ngen::serialization::FileBackend::Writer::write ( const RecordView & rv) -> expected< void, BackendError >
inlineoverridevirtual

Member Data Documentation

◆ durability_

Durability ngen::serialization::FileBackend::Writer::durability_
private

Referenced by commit().

◆ parent_

std::shared_ptr<FileBackend> ngen::serialization::FileBackend::Writer::parent_
private

Referenced by commit(), and write().


The documentation for this class was generated from the following file: