|
wowlib 0.0.0
Read & write World of Warcraft client files — a C++26 core
|
The decode target: the codecs build the record vector through this, one field at a time. More...
#include <wowlib/db/codec.hpp>
Public Member Functions | |
| virtual | ~RecordSink ()=default |
| virtual void | clear ()=0 |
| virtual void | reserve (std::size_t n)=0 |
| virtual std::size_t | add ()=0 |
| virtual std::size_t | size () const =0 |
| virtual std::uint32_t | idOf (std::size_t record) const =0 |
| virtual void | setInt (std::size_t record, std::size_t column, std::size_t element, std::int64_t value)=0 |
| virtual void | setFloat (std::size_t record, std::size_t column, std::size_t element, float value)=0 |
| virtual void | setString (std::size_t record, std::size_t column, std::size_t element, std::string_view value)=0 |
| virtual void | cloneWithId (std::size_t src, std::uint32_t newId)=0 |
| Clone record src into a fresh record and set its id column to newId (WDC copy-table materialization). | |
| virtual std::size_t | findById (std::uint32_t id) const =0 |
| The first record whose id equals id, or size() when none (copy source lookup). | |
The decode target: the codecs build the record vector through this, one field at a time.
add() appends a default record and returns its index; set_* scatter a decoded value into (record, column, element) — element indexes an array member, a LocString language slot (its flags being the element at index localeCount), or 0 for a scalar. record_bridge.hpp's ErasedRecordSink implements it over a std::vector<Record>& (record_bridge.hpp).
|
virtualdefault |
|
pure virtual |
Implemented in wowlib::db::detail::ColumnRows, and wowlib::db::ErasedRecordSink.
Referenced by wowlib::db::readWdb2(), and wowlib::db::readWdbc().
|
pure virtual |
Implemented in wowlib::db::detail::ColumnRows, and wowlib::db::ErasedRecordSink.
Referenced by wowlib::db::readWdb2(), wowlib::db::readWdbc(), and wowlib::db::wdc::readWdc().
|
pure virtual |
Clone record src into a fresh record and set its id column to newId (WDC copy-table materialization).
Implemented in wowlib::db::detail::ColumnRows, and wowlib::db::ErasedRecordSink.
|
pure virtual |
The first record whose id equals id, or size() when none (copy source lookup).
Implemented in wowlib::db::detail::ColumnRows, and wowlib::db::ErasedRecordSink.
|
pure virtual |
Implemented in wowlib::db::detail::ColumnRows, and wowlib::db::ErasedRecordSink.
|
pure virtual |
Implemented in wowlib::db::detail::ColumnRows, and wowlib::db::ErasedRecordSink.
Referenced by wowlib::db::readWdb2(), and wowlib::db::readWdbc().
|
pure virtual |
Implemented in wowlib::db::detail::ColumnRows, and wowlib::db::ErasedRecordSink.
Referenced by wowlib::db::detail::decodeInlineRecord().
|
pure virtual |
Implemented in wowlib::db::detail::ColumnRows, and wowlib::db::ErasedRecordSink.
Referenced by wowlib::db::detail::decodeInlineRecord().
|
pure virtual |
Implemented in wowlib::db::detail::ColumnRows, and wowlib::db::ErasedRecordSink.
Referenced by wowlib::db::detail::decodeInlineRecord().
|
pure virtual |
Implemented in wowlib::db::detail::ColumnRows, and wowlib::db::ErasedRecordSink.