Sobeston / zig.guide

Repo for https://zig.guide content. Get up to speed with Zig quickly.
https://zig.guide
MIT License
688 stars 178 forks source link

Chapter 13 Iterator code snippet does not compile #249

Closed aboudekahil closed 2 months ago

aboudekahil commented 3 months ago

Issue

The following code snippet doesn't compile, openIterableDir is not a method of Dir type.

test "iterator looping" {
    var iter = (try std.fs.cwd().openIterableDir(
        ".",
        .{},
    )).iterate();

    var file_count: usize = 0;
    while (try iter.next()) |entry| {
        if (entry.kind == .file) file_count += 1;
    }

    try expect(file_count > 0);
}

Proposed solution

Replace the above snippet with the one suggested below:

test "iterator looping" {
    var iter = (try std.fs.cwd().openDir(".", .{ .iterate = true })).iterate();

    var file_count: usize = 0;
    while (try iter.next()) |entry| {
        if (entry.kind == .file) file_count += 1;
    }

    try expect(file_count > 0);
}
Sobeston commented 2 months ago

Closed in dc25911fd64684020d336a664f46d94d30618b97