fn insque(element: *anyopaque, pred: ?*anyopaque) callconv(.c) void
fn insque(element: *anyopaque, pred: ?*anyopaque) callconv(.c) void { const e: *Node = @ptrCast(@alignCast(element)); if (pred) |p_ptr| { const p: *Node = @ptrCast(@alignCast(p_ptr)); e.next = p.next; e.prev = p; p.next = e; if (e.next) |next| { next.prev = e; } } else { e.next = null; e.prev = null; } }