Module fs/file

fs/file

Async file I/O operations with Exception-based error handling.

Wraps a file descriptor with typed async I/O operations. Uses the Exception effect for error handling.

Example

{ File, read_string, write_file, OpenMode } :: import "std/fs/file";

main :: (fn(io : Io, exn : Exception) -> unit)({
  // Write a file
  io.await(write_file(Path.new(`test.txt`), `hello world`, io), { io, exn });

  // Read it back
  content := io.await(read_string(Path.new(`test.txt`), io), { io, exn });
  println(content);

  // Open with OpenMode
  f := io.await(File.open(Path.new(`test.txt`), .Read, io), { io, exn });
});

Types

File struct
File

Trait Implementations

Dispose

Constants

open_with constant (unknown)
open_with_str constant (unknown)
open_with_cstr constant (unknown)
open constant (unknown)
open_str constant (unknown)
open_cstr constant (unknown)
read constant (unknown)
write_string constant (unknown)
write_bytes constant (unknown)
read_bytes constant (unknown)
read_string constant (unknown)
flush constant (unknown)
seek constant (unknown)
position constant (unknown)
size constant (unknown)
close constant (unknown)
fd constant (unknown)
path constant (unknown)
metadata constant (unknown)
read_string constant (unknown)
read_string_str constant (unknown)
read_string_cstr constant (unknown)
read_file constant (unknown)
read_file_str constant (unknown)
read_file_cstr constant (unknown)
write_file constant (unknown)
write_file_str constant (unknown)
write_file_cstr constant (unknown)
write_bytes constant (unknown)
append_file constant (unknown)
append_file_str constant (unknown)
exists constant (unknown)
exists_str constant (unknown)
exists_cstr constant (unknown)
is_file constant (unknown)
is_file_str constant (unknown)
is_file_cstr constant (unknown)
is_dir constant (unknown)
is_dir_str constant (unknown)
is_dir_cstr constant (unknown)
canonical constant (unknown)
canonical_str constant (unknown)
canonical_cstr constant (unknown)