forked from AbleOS/ableos
41 lines
1 KiB
Rust
41 lines
1 KiB
Rust
//! File system related system calls.
|
|
|
|
/// Temporary representation of a file path
|
|
pub type Path = *const u8;
|
|
|
|
/// Remove a Directory from the filesystem
|
|
///
|
|
/// # Arguments
|
|
/// * `full_path` - The full path of the directory to remove
|
|
/// * `force` - Whether to remove the directory even if it is not empty
|
|
#[no_mangle]
|
|
pub extern "C" fn remove_directory(path: Path, force_delete: bool) {
|
|
unimplemented!();
|
|
}
|
|
|
|
/// Create a new directory at the given path
|
|
///
|
|
/// # Arguments
|
|
/// * `full_path` - The full path of the directory to create
|
|
#[no_mangle]
|
|
pub extern "C" fn create_directory(path: Path) -> Result<(), FileErrors> {
|
|
unimplemented!();
|
|
}
|
|
|
|
#[repr(C)]
|
|
/// Errors that can occur when messing with files
|
|
pub enum FileErrors {
|
|
/// The directory can not be created
|
|
DirectoryCouldNotBeCreated,
|
|
/// The directory could not be removed
|
|
DirectoryCouldNotBeRemoved,
|
|
///
|
|
FileCouldNotBeCreated,
|
|
///
|
|
FileCouldNotBeRemoved,
|
|
/// The file could not be opened
|
|
FileCouldNotBeOpened,
|
|
///
|
|
FileCouldNotBeClosed,
|
|
}
|