feat(Variant): add copy constructor impl

This commit is contained in:
Ronan Abhamon 2017-09-14 15:46:01 +02:00
parent d09232f313
commit 261b8cc880

View file

@ -66,7 +66,18 @@ Variant::Variant (Type type) : Variant() {
}
Variant::Variant (const Variant &src) {
// TODO.
// Don't call placement new.
L_ASSERT(!mPrivate);
mPrivate = new VariantPrivate();
L_D(Variant);
d->type = src.getPrivate()->type;
const VariantPrivate::Value &value = src.getPrivate()->value;
if (d->type == String)
d->value.str = new string(*value.str);
else
d->value = value;
}
Variant::Variant (Variant &&src) {