51 lines
1.6 KiB
Zig
51 lines
1.6 KiB
Zig
pub fn main() !void {
|
|
var gpa = std.heap.DebugAllocator(.{}){};
|
|
const gp_allocator = gpa.allocator();
|
|
defer {
|
|
_ = gpa.detectLeaks();
|
|
const deinit_status = gpa.deinit();
|
|
if (deinit_status == .leak) @panic("Allocator leaked");
|
|
}
|
|
|
|
var tsa = std.heap.ThreadSafeAllocator{ .child_allocator = gp_allocator };
|
|
const allocator = tsa.allocator();
|
|
|
|
var pool: std.Thread.Pool = undefined;
|
|
try pool.init(.{
|
|
.allocator = allocator,
|
|
.n_jobs = 4,
|
|
});
|
|
defer pool.deinit();
|
|
|
|
var localContentProvider = local_provider.LocalContentProvider{ .threadPool = &pool };
|
|
|
|
const fullName: models.FullName = .{ .path = "/home/adam/1.txt" };
|
|
var item = try localContentProvider.getItemByFullName(fullName, &.{}, allocator);
|
|
defer item.deinit();
|
|
|
|
const homeFullName: models.FullName = .{ .path = "C:\\Users\\adakovacs" };
|
|
const homeItem = try localContentProvider.getItemByFullName(homeFullName, &.{}, allocator);
|
|
// defer homeItem.deinit();
|
|
const c = switch (homeItem.item) {
|
|
.container => |c| c,
|
|
.element => unreachable,
|
|
};
|
|
|
|
var tab1 = try allocator.create(Tab);
|
|
defer allocator.destroy(tab1);
|
|
|
|
tab1.init(&pool, allocator);
|
|
defer tab1.deinit();
|
|
|
|
tab1.setCurrentLocation(c);
|
|
|
|
std.Thread.sleep(5 * std.time.ns_per_s);
|
|
}
|
|
|
|
const std = @import("std");
|
|
const models = @import("core/models.zig");
|
|
const provider = @import("core/provider/provider.zig");
|
|
const local_provider = @import("core/provider/local.zig");
|
|
const tab = @import("core/tab/tab.zig");
|
|
const Tab = tab.Tab;
|