#include <nodemetadata.h>
Public Member Functions | |
NodeMetadata (IItemDefManager *item_def_mgr) | |
~NodeMetadata () | |
void | serialize (std::ostream &os, u8 version, bool disk=true) const |
void | deSerialize (std::istream &is, u8 version) |
void | clear () |
bool | empty () const |
Inventory * | getInventory () |
bool | isPrivate (const std::string &name) const |
bool | markPrivate (const std::string &name, bool set) |
Marks a key as private. | |
Public Member Functions inherited from SimpleMetadata | |
virtual | ~SimpleMetadata ()=default |
size_t | size () const |
bool | contains (const std::string &name) const override |
virtual bool | setString (const std::string &name, std::string_view var) override |
const StringMap & | getStrings (StringMap *) const override final |
const std::vector< std::string > & | getKeys (std::vector< std::string > *place) const override final |
const std::string & | getString (const std::string &name, u16 recursion=0) const |
const std::string & | resolveString (const std::string &str, u16 recursion=0) const |
const StringMap & | getStrings () const |
bool | isModified () const |
void | setModified (bool v) |
Public Member Functions inherited from IMetadata | |
virtual | ~IMetadata ()=default |
bool | operator== (const IMetadata &other) const |
bool | operator!= (const IMetadata &other) const |
const std::string & | getString (const std::string &name, std::string *place, u16 recursion=0) const |
bool | getStringToRef (const std::string &name, std::string &str, u16 recursion=0) const |
bool | removeString (const std::string &name) |
const std::string & | resolveString (const std::string &str, std::string *place, u16 recursion=0, bool deprecated=false) const |
Private Member Functions | |
int | countNonPrivate () const |
Private Attributes | |
Inventory * | m_inventory |
std::unordered_set< std::string > | m_privatevars |
Additional Inherited Members | |
Protected Member Functions inherited from SimpleMetadata | |
const std::string * | getStringRaw (const std::string &name, std::string *) const override final |
Protected Attributes inherited from SimpleMetadata | |
StringMap | m_stringvars |
NodeMetadata::NodeMetadata | ( | IItemDefManager * | item_def_mgr | ) |
NodeMetadata::~NodeMetadata | ( | ) |
References m_inventory.
|
virtual |
Reimplemented from SimpleMetadata.
References Inventory::clear(), SimpleMetadata::clear(), m_inventory, and m_privatevars.
Referenced by content_nodemeta_deserialize_legacy_body(), deSerialize(), and NodeMetadataList::remove().
|
private |
References isPrivate(), and SimpleMetadata::m_stringvars.
Referenced by serialize().
void NodeMetadata::deSerialize | ( | std::istream & | is, |
u8 | version ) |
References clear(), Inventory::deSerialize(), deSerializeString16(), deSerializeString32(), m_inventory, m_privatevars, SimpleMetadata::m_stringvars, readU32(), and readU8().
Referenced by RollbackAction::applyRevert(), and NodeMetadataList::deSerialize().
|
virtual |
Reimplemented from SimpleMetadata.
References SimpleMetadata::empty(), Inventory::getLists(), and m_inventory.
Referenced by NodeMetaRef::reportMetadataChange(), and NodeMetadataList::serialize().
|
inline |
References m_inventory.
Referenced by content_nodemeta_deserialize_legacy_body(), Client::getInventory(), ServerInventoryManager::getInventory(), NodeMetaRef::handleFromTable(), and NodeMetaRef::handleToTable().
|
inline |
References m_privatevars.
Referenced by countNonPrivate(), NodeMetaRef::reportMetadataChange(), and serialize().
bool NodeMetadata::markPrivate | ( | const std::string & | name, |
bool | set ) |
Marks a key as private.
References m_privatevars.
Referenced by NodeMetaRef::l_mark_as_private().
void NodeMetadata::serialize | ( | std::ostream & | os, |
u8 | version, | ||
bool | disk = true ) const |
References countNonPrivate(), isPrivate(), m_inventory, SimpleMetadata::m_stringvars, Inventory::serialize(), serializeString16(), serializeString32(), writeU32(), and writeU8().
Referenced by RollbackNode::RollbackNode(), and NodeMetadataList::serialize().
|
private |
Referenced by ~NodeMetadata(), clear(), deSerialize(), empty(), getInventory(), and serialize().
|
private |
Referenced by clear(), deSerialize(), isPrivate(), and markPrivate().