From 804204db7cf1e8a28defd359d17fa72949e13eff Mon Sep 17 00:00:00 2001 From: Nathan Reiner Date: Mon, 31 Aug 2026 23:05:16 +0200 Subject: Implement with ptrCast to make it more transparent. --- src/List.zig | 49 ------------------------------------------------- 1 file changed, 49 deletions(-) delete mode 100644 src/List.zig (limited to 'src/List.zig') diff --git a/src/List.zig b/src/List.zig deleted file mode 100644 index 6c9f65c..0000000 --- a/src/List.zig +++ /dev/null @@ -1,49 +0,0 @@ -const c = @import("c"); - -const zpy = @import("root.zig"); -const conversion = zpy.conversion; - -const Self = @This(); - -object: zpy.Object, - -pub fn new(items: []const zpy.Object) !Self { - var list: Self = .{ - .object = .fromPtr(try conversion.ptr(c.PyList_New(items.len))), - }; - errdefer list.deinit(); - - for (items, 0..) |item, index| { - try list.insert(index, item); - } -} - -pub fn size(self: *const Self) usize { - return @as(usize, c.PyList_Size(self.object.ptr)); -} - -pub fn get(self: *const Self, index: usize) !zpy.Object { - return .fromC(try conversion.ptr(c.PyList_GetItem(self.object.ptr, index))); -} - -pub fn set(self: *Self, index: usize, value: zpy.Object) !void { - return conversion.success( - c.PyList_SetItem(self.object.ptr, index, value.ptr), - ); -} - -pub fn insert(self: *Self, index: usize, value: zpy.Object) !void { - return .conversion.success( - c.PyList_Insert(self.object.ptr, index, value.ptr) - ); -} - -pub fn append(self: *Self, value: zpy.Object) !void { - return .conversion.success( - c.PyList_Append(self.object.ptr, value.ptr), - ); -} - -pub fn deinit(self: *Self) void { - self.object.decref(); -} -- cgit v1.2.3-70-g09d2