const builtin = @import("builtin"); pub const Watcher = switch (builtin.target.os.tag) { .linux => @import("LinuxWatcher.zig"), .macos => @import("MacosWatcher.zig"), .windows => @import("WindowsWatcher.zig"), else => @compileError("unsupported platform"), }; pub const Debouncer = @import("Debouncer.zig"); pub const Error = error{ OutOfMemory, SystemResources, Unexpected, ProcessFdQuotaExceeded, SystemFdQuotaExceeded, LockedMemoryLimitExceeded, ThreadQuotaExceeded, IsDir, WouldBlock, AccessDenied, ProcessNotFound, PermissionDenied, FileTooBig, NoSpaceLeft, DeviceBusy, NoDevice, SharingViolation, PathAlreadyExists, FileNotFound, PipeBusy, NameTooLong, InvalidUtf8, InvalidWtf8, BadPathName, NetworkNotFound, AntivirusInterference, SymLinkLoop, NotDir, FileLocksNotSupported, FileBusy, UserResourceLimitReached, WatchAlreadyExists, InvalidHandle, QueueFailed, };