25#include <rtl/ustring.hxx>
36 int layer, OUString defaultTemplateName,
37 OUString templateName):
38 Node(layer), defaultTemplateName_(
std::move(defaultTemplateName)),
39 templateName_(
std::move(templateName)), mandatory_(
Data::NO_LAYER)
43 return new SetNode(*
this, keepTemplateName);
68 [&templateName](OUString
const & longName) { return Data::equalTemplateNames(templateName, longName); } );
72 Node(other), defaultTemplateName_(other.defaultTemplateName_),
73 additionalTemplateNames_(other.additionalTemplateNames_),
74 mandatory_(other.mandatory_)
77 if (keepTemplateName) {
void cloneInto(NodeMap *target) const
virtual rtl::Reference< Node > clone(bool keepTemplateName) const override
virtual ~SetNode() override
SetNode(int layer, OUString defaultTemplateName, OUString templateName)
virtual int getMandatory() const override
bool isValidTemplate(OUString const &templateName) const
virtual OUString getTemplateName() const override
std::vector< OUString > additionalTemplateNames_
virtual void setMandatory(int layer) override
OUString defaultTemplateName_
virtual NodeMap & getMembers() override
virtual Kind kind() const override
static bool equalTemplateNames(OUString const &shortName, OUString const &longName)