Under heavy development. This site describes the intended 1.0 language. Current features and performance vary. Development status
Sn50SnThe SnAPI programming language
Snapshot · Oct 24, 2026 · Frozen documentation

FileSystemCapabilities

Owns the selected provider's implemented-request inventory. True means an implementation exists, never permission, object support, field presence or guaranteed success. Individual operations remain authoritative. The snapshot allocates nothing, retains no resource and performs no probing; immutable publication permits concurrent observation. It is independent of native filename representation and ordinary stream capabilities.

Sn is under heavy development. This reference includes the intended 1.0 design; features may be incomplete in the current compiler. Read the status →

Module std.fs

import std.fs;

Public declaration contracts and authored examples. A page can document several related symbols. Implementation bodies are excluded.

FileSystemCapabilities

pub struct FileSystemCapabilities

Owns the selected provider's implemented-request inventory. True means an implementation exists, never permission, object support, field presence or guaranteed success. Individual operations remain authoritative. The snapshot allocates nothing, retains no resource and performs no probing; immutable publication permits concurrent observation. It is independent of native filename representation and ordinary stream capabilities.

pub CanOpenFiles: bool;

pub CanOpenFiles: bool;

Whether the selected provider implements file opening.

pub CanEnumerateDirectories: bool;

pub CanEnumerateDirectories: bool;

Whether the selected provider implements directory enumeration.

pub CanReadMetadata: bool;

pub CanReadMetadata: bool;

Whether the selected provider implements metadata observation.

pub CanChangeTimes: bool;

pub CanChangeTimes: bool;

Whether the selected provider implements timestamp mutation.

pub CanChangePosixMode: bool;

pub CanChangePosixMode: bool;

Whether the selected provider implements POSIX mode mutation.

pub CanChangePosixOwnership: bool;

pub CanChangePosixOwnership: bool;

Whether the selected provider implements POSIX ownership mutation.

pub CanUseExtendedAttributes: bool;

pub CanUseExtendedAttributes: bool;

Whether the selected provider implements opaque extended attributes.

pub CanUsePosixAcls: bool;

pub CanUsePosixAcls: bool;

Whether the selected provider implements semantic POSIX ACL operations.

Documentation snapshot: October 24, 2026 About versions ↗
Searching Development · language & standard library