31 lines
874 B
C++
31 lines
874 B
C++
#pragma once
|
|
|
|
#include "../text/str.h"
|
|
|
|
class idXMLAttribute {
|
|
public:
|
|
idXMLAttribute(const char* attributeName = "", const char* attributeValue = "")
|
|
: name(attributeName), value(attributeValue) {
|
|
name.TrimWhitespaceRecovered();
|
|
}
|
|
|
|
const char* GetName() const { return name.c_str(); }
|
|
const char* GetValue() const { return value.c_str(); }
|
|
void SetValue(const char* newValue) { value = newValue; }
|
|
void FormatEntities() {
|
|
name.ReplaceRecovered("&", "&");
|
|
name.ReplaceRecovered("<", "<");
|
|
name.ReplaceRecovered(">", ">");
|
|
value.ReplaceRecovered("&", "&");
|
|
value.ReplaceRecovered("<", "<");
|
|
value.ReplaceRecovered(">", ">");
|
|
}
|
|
|
|
private:
|
|
idStr name;
|
|
idStr value;
|
|
};
|
|
|
|
static_assert(sizeof(idXMLAttribute) == 64,
|
|
"Recovered idXMLAttribute ABI changed");
|