Skip to main content

rl_lang/interpreter/stdlib/fs/
mod.rs

1//! `std::fs` - filesystem operations: create, remove, list, copy, move, and metadata.
2//!
3//! All errors include the path and the underlying OS error message.
4//! `temp_dir` uses `with_raw_function` since it takes no arguments.
5
6mod copy_file;
7mod file_modified;
8mod file_size;
9mod list_dir;
10mod mkdir;
11mod mkdir_all;
12mod move_file;
13mod rename_file;
14mod rmdir;
15mod rmdir_all;
16mod temp_dir;
17
18use crate::interpreter::native::Module;
19
20pub const KEYWORDS: &[&str] = &[
21    "mkdir",
22    "mkdir_all",
23    "rmdir",
24    "rmdir_all",
25    "list_dir",
26    "copy_file",
27    "move_file",
28    "file_size",
29    "file_modified",
30    "temp_dir",
31    "rename_file",
32];
33
34pub fn module() -> Module {
35    Module::new("fs")
36        .with_function("mkdir", mkdir::std_mkdir)
37        .with_function("mkdir_all", mkdir_all::std_mkdir_all)
38        .with_function("rmdir", rmdir::std_rmdir)
39        .with_function("rmdir_all", rmdir_all::std_rmdir_all)
40        .with_function("list_dir", list_dir::std_list_dir)
41        .with_function("copy_file", copy_file::std_copy_file)
42        .with_function("move_file", move_file::std_move_file)
43        .with_function("file_size", file_size::std_file_size)
44        .with_function("file_modified", file_modified::std_file_modified)
45        .with_raw_function("temp_dir", temp_dir::std_temp_dir)
46        .with_function("rename_file", rename_file::std_rename_file)
47}