structstd.fs.File.MetadataWasi[src]

Fields

Functions

Functionsize[src]

pub fn size(self: @This()) u64

Parameters

self: @This()

Source Code

Source code
pub fn size(self: @This()) u64 {
    return self.stat.size;
}

Functionpermissions[src]

pub fn permissions(self: @This()) Permissions

Parameters

self: @This()

Source Code

Source code
pub fn permissions(self: @This()) Permissions {
    return .{ .inner = .{ .mode = self.stat.mode } };
}

Functionkind[src]

pub fn kind(self: @This()) Kind

Parameters

self: @This()

Source Code

Source code
pub fn kind(self: @This()) Kind {
    return switch (self.stat.filetype) {
        .BLOCK_DEVICE => .block_device,
        .CHARACTER_DEVICE => .character_device,
        .DIRECTORY => .directory,
        .SYMBOLIC_LINK => .sym_link,
        .REGULAR_FILE => .file,
        .SOCKET_STREAM, .SOCKET_DGRAM => .unix_domain_socket,
        else => .unknown,
    };
}

Functionaccessed[src]

pub fn accessed(self: @This()) i128

Parameters

self: @This()

Source Code

Source code
pub fn accessed(self: @This()) i128 {
    return self.stat.atim;
}

Functionmodified[src]

pub fn modified(self: @This()) i128

Parameters

self: @This()

Source Code

Source code
pub fn modified(self: @This()) i128 {
    return self.stat.mtim;
}

Functioncreated[src]

pub fn created(self: @This()) ?i128

Parameters

self: @This()

Source Code

Source code
pub fn created(self: @This()) ?i128 {
    return self.stat.ctim;
}

Source Code

Source code
pub const MetadataWasi = struct {
    stat: std.os.wasi.filestat_t,

    pub fn size(self: @This()) u64 {
        return self.stat.size;
    }

    pub fn permissions(self: @This()) Permissions {
        return .{ .inner = .{ .mode = self.stat.mode } };
    }

    pub fn kind(self: @This()) Kind {
        return switch (self.stat.filetype) {
            .BLOCK_DEVICE => .block_device,
            .CHARACTER_DEVICE => .character_device,
            .DIRECTORY => .directory,
            .SYMBOLIC_LINK => .sym_link,
            .REGULAR_FILE => .file,
            .SOCKET_STREAM, .SOCKET_DGRAM => .unix_domain_socket,
            else => .unknown,
        };
    }

    pub fn accessed(self: @This()) i128 {
        return self.stat.atim;
    }

    pub fn modified(self: @This()) i128 {
        return self.stat.mtim;
    }

    pub fn created(self: @This()) ?i128 {
        return self.stat.ctim;
    }
}