openMSX
|
#include <XMLElement.hh>
Public Member Functions | |
XMLDocument (const XMLDocument &)=delete | |
XMLDocument (XMLDocument &&)=delete | |
XMLDocument & | operator= (const XMLDocument &)=delete |
XMLDocument & | operator= (XMLDocument &&)=delete |
XMLDocument ()=default | |
template<typename T , typename ... Args> requires (!std::same_as<XMLDocument, std::remove_cvref_t<T>>) | |
XMLDocument (T &&t, Args &&...args) | |
void | load (const std::string &filename, std::string_view systemID) |
const XMLElement * | getRoot () const |
void | setRoot (XMLElement *root_) |
XMLElement * | allocateElement (const char *name) |
XMLElement * | allocateElement (const char *name, const char *data) |
XMLAttribute * | allocateAttribute (const char *name, const char *value) |
const char * | allocateString (std::string_view str) |
XMLElement * | getOrCreateChild (XMLElement &parent, const char *childName, const char *childData) |
XMLElement * | setChildData (XMLElement &parent, const char *childName, const char *childData) |
void | setAttribute (XMLElement &elem, const char *attrName, const char *attrValue) |
template<typename Range , typename UnaryOp > | |
void | generateList (XMLElement &parent, const char *itemName, Range &&range, UnaryOp op) |
void | load (const OldXMLElement &elem) |
void | serialize (MemInputArchive &ar, unsigned version) |
void | serialize (MemOutputArchive &ar, unsigned version) const |
void | serialize (XmlInputArchive &ar, unsigned version) |
void | serialize (XmlOutputArchive &ar, unsigned version) const |
Static Public Member Functions | |
static XMLDocument & | getStaticDocument () |
Friends | |
class | XMLDocumentHandler |
Definition at line 262 of file XMLElement.hh.
|
delete |
|
delete |
|
default |
|
inline |
Definition at line 284 of file XMLElement.hh.
XMLAttribute * openmsx::XMLDocument::allocateAttribute | ( | const char * | name, |
const char * | value | ||
) |
Definition at line 306 of file XMLElement.cc.
References monotonic_allocator::allocate().
Referenced by openmsx::XMLDocumentHandler::attribute(), openmsx::HardwareConfig::createRomConfig(), and setAttribute().
XMLElement * openmsx::XMLDocument::allocateElement | ( | const char * | name | ) |
Definition at line 294 of file XMLElement.cc.
References monotonic_allocator::allocate().
Referenced by openmsx::HardwareConfig::createRomConfig(), generateList(), getOrCreateChild(), setChildData(), and openmsx::XMLDocumentHandler::start().
XMLElement * openmsx::XMLDocument::allocateElement | ( | const char * | name, |
const char * | data | ||
) |
Definition at line 300 of file XMLElement.cc.
References monotonic_allocator::allocate().
const char * openmsx::XMLDocument::allocateString | ( | std::string_view | str | ) |
Definition at line 312 of file XMLElement.cc.
References monotonic_allocator::allocate(), and ranges::copy().
Referenced by openmsx::HardwareConfig::createRomConfig(), and openmsx::HardwareConfig::parseSlots().
|
inline |
Definition at line 303 of file XMLElement.hh.
References allocateElement().
Referenced by openmsx::HardwareConfig::createRomConfig().
XMLElement * openmsx::XMLDocument::getOrCreateChild | ( | XMLElement & | parent, |
const char * | childName, | ||
const char * | childData | ||
) |
Definition at line 171 of file XMLElement.cc.
References allocateElement().
|
inline |
Definition at line 290 of file XMLElement.hh.
Referenced by openmsx::HardwareConfig::getConfig(), and openmsx::XmlInputArchive::XmlInputArchive().
|
inlinestatic |
Definition at line 267 of file XMLElement.hh.
Referenced by openmsx::CassettePlayer::CassettePlayer(), openmsx::LaserdiscPlayer::LaserdiscPlayer(), and TEST_CASE().
void openmsx::XMLDocument::load | ( | const OldXMLElement & | elem | ) |
Definition at line 512 of file XMLElement.cc.
void openmsx::XMLDocument::load | ( | const std::string & | filename, |
std::string_view | systemID | ||
) |
Definition at line 320 of file XMLElement.cc.
References openmsx::MemBuffer< T, ALIGNMENT >::data(), rapidsax::EXTRA_BUFFER_SPACE, openmsx::MemBuffer< T, ALIGNMENT >::first(), openmsx::File::getSize(), openmsx::XMLDocumentHandler::getSystemID(), openmsx::File::read(), and openmsx::MemBuffer< T, ALIGNMENT >::resize().
Referenced by openmsx::HardwareConfig::serialize(), and openmsx::XmlInputArchive::XmlInputArchive().
|
delete |
|
delete |
void openmsx::XMLDocument::serialize | ( | MemInputArchive & | ar, |
unsigned | version | ||
) |
Definition at line 389 of file XMLElement.cc.
void openmsx::XMLDocument::serialize | ( | MemOutputArchive & | ar, |
unsigned | version | ||
) | const |
Definition at line 415 of file XMLElement.cc.
References openmsx::MemOutputArchive::save().
void openmsx::XMLDocument::serialize | ( | XmlInputArchive & | ar, |
unsigned | version | ||
) |
Definition at line 452 of file XMLElement.cc.
References openmsx::XmlInputArchive::currentElement(), and openmsx::XMLElement::getFirstChild().
void openmsx::XMLDocument::serialize | ( | XmlOutputArchive & | ar, |
unsigned | version | ||
) | const |
Definition at line 477 of file XMLElement.cc.
References openmsx::XmlOutputArchive::getXMLOutputStream().
void openmsx::XMLDocument::setAttribute | ( | XMLElement & | elem, |
const char * | attrName, | ||
const char * | attrValue | ||
) |
Definition at line 210 of file XMLElement.cc.
References allocateAttribute().
XMLElement * openmsx::XMLDocument::setChildData | ( | XMLElement & | parent, |
const char * | childName, | ||
const char * | childData | ||
) |
Definition at line 190 of file XMLElement.cc.
References allocateElement().
|
inline |
Definition at line 291 of file XMLElement.hh.
|
friend |
Definition at line 333 of file XMLElement.hh.