5#ifndef CORE_FXCRT_XML_CFX_XMLDOCUMENT_H_
6#define CORE_FXCRT_XML_CFX_XMLDOCUMENT_H_
12#include "core/fxcrt/unowned_ptr.h"
22 CFX_XMLElement*
GetRoot()
const {
return root_; }
24 template <
typename T,
typename... Args>
26 nodes_.push_back(std::make_unique<T>(std::forward<Args>(args)...));
27 return static_cast<T*>(nodes_.back().get());
37 std::vector<std::unique_ptr<CFX_XMLNode>> nodes_;
CFX_XMLElement * GetRoot() const
T * CreateNode(Args &&... args)
void AppendNodesFrom(CFX_XMLDocument *other)
WideString GetAttribute(const WideString &name) const
static WideString FromASCII(ByteStringView str)
bool EqualsASCII(ByteStringView that) const