#include <cstdlib>
#include <plist/Uid.h>
#include <plist/plist.h>
namespace PList {
Uid::Uid(Node *parent) : Node(PLIST_UID, parent) {}
Uid::Uid(plist_t node, Node *parent) : Node(node, parent) {}
Uid::Uid(const PList::Uid &i) : Node(PLIST_UID) {
plist_set_uid_val(_node, i.GetValue());
}
Uid &Uid::operator=(const PList::Uid &i) {
plist_free(_node);
_node = plist_copy(i.GetPlist());
return *this;
}
Uid::Uid(uint64_t i) : Node(PLIST_UID) { plist_set_uid_val(_node, i); }
Uid::~Uid() {}
Node *Uid::Clone() const { return new Uid(*this); }
void Uid::SetValue(uint64_t i) { plist_set_uid_val(_node, i); }
uint64_t Uid::GetValue() const {
uint64_t i = 0;
plist_get_uid_val(_node, &i);
return i;
}
}