37 lines
1.2 KiB
Zig
37 lines
1.2 KiB
Zig
const std = @import("std");
|
|
const QVariant = @import("../../types/QVariant.zig").QVariant;
|
|
const freeQVariantMap = @import("./freeQVariantMap.zig").freeQVariantMap;
|
|
const freeQVariantList = @import("./freeQVariantList.zig").freeQVariantList;
|
|
const freeQStringList = @import("./freeQStringList.zig").freeQStringList;
|
|
const freeQByteArray = @import("./freeQByteArray.zig").freeQByteArray;
|
|
const freeString = @import("./freeString.zig").freeString;
|
|
const freeUserType = @import("./freeUserType.zig").freeUserType;
|
|
|
|
pub fn freeQVariant(variant: QVariant, allocator: *std.mem.Allocator) void {
|
|
switch (variant) {
|
|
.Byte, .Int, .UInt, .Short, .QDateTime => {
|
|
// Static
|
|
},
|
|
|
|
.QVariantMap => |value| {
|
|
freeQVariantMap(value, allocator);
|
|
},
|
|
|
|
.QVariantList => |value| {
|
|
freeQVariantList(value, allocator);
|
|
},
|
|
.String => |value| {
|
|
freeString(value, allocator);
|
|
},
|
|
.QStringList => |value| {
|
|
freeQStringList(value, allocator);
|
|
},
|
|
.QByteArray => |value| {
|
|
freeQByteArray(value, allocator);
|
|
},
|
|
.UserType => |value| {
|
|
freeUserType(value, allocator);
|
|
},
|
|
}
|
|
}
|