67 assert(!
sName.isEmpty() &&
"empty attribute name is invalid");
70 assert((std::count(
sName.getStr(),
sName.getStr() +
sName.getLength(),
u':') <= 1
71 || std::count(
sName.getStr(),
sName.getStr() +
sName.getLength(),
u'^') == 1)
72 &&
"too many colons");
92 sal_Int16 nMax = r->getLength();
96 for (sal_Int16
i = 0;
i < nMax; ++
i)
120 [&rName](
const TagAttribute& rAttr) { return rAttr.sName == rName; });
123 return static_cast<sal_Int16
>(std::distance(
mAttributes.begin(), ii));
void RemoveAttributeByIndex(sal_Int16 i)
void RenameAttributeByIndex(sal_Int16 i, const OUString &rNewName)
sal_Int16 GetIndexByName(const OUString &rName) const
void AppendAttributeList(const css::uno::Reference< css::xml::sax::XAttributeList > &)
virtual OUString SAL_CALL getValueByName(const OUString &aName) override
virtual ~AttributeList() override
void AddAttribute(const OUString &sName, const OUString &sValue)
virtual sal_Int16 SAL_CALL getLength() override
virtual css::uno::Reference< XCloneable > SAL_CALL createClone() override
void SetValueByIndex(sal_Int16 i, const OUString &rValue)
void RemoveAttribute(const OUString &sName)
std::vector< TagAttribute > mAttributes