///|
pub(all) suberror ReaddirpError {
ReaddirpError(String)
} derive(Debug)
///|
pub(all) enum EntryType {
Files
Directories
FilesAndDirectories
All
} derive(Eq, Debug)
///|
pub(all) enum FileKind {
File
Directory
Symlink
Other
} derive(Eq, Debug)
///|
pub(all) struct FileStats {
size : Int64
mode : Int
} derive(Eq, Debug)
///|
pub(all) struct EntryInfo {
path : String
full_path : String
basename : String
kind : FileKind
stats : FileStats?
} derive(Eq, Debug)
///|
pub(all) enum WarningKind {
Missing
PermissionDenied
TooManySymlinks
RecursiveSymlink
Other
} derive(Eq, Debug)
///|
pub(all) struct ReaddirpWarning {
path : String
kind : WarningKind
message : String
} derive(Eq, Debug)
///|
pub(all) struct ReaddirpReport {
entries : Array[EntryInfo]
warnings : Array[ReaddirpWarning]
} derive(Eq, Debug)
///|
pub(all) struct Options {
file_filter : (EntryInfo) -> Bool
directory_filter : (EntryInfo) -> Bool
type_ : EntryType
lstat : Bool
always_stat : Bool
depth : Int
}
///|
fn accept_entry(_entry : EntryInfo) -> Bool {
true
}
///|
pub fn Options::default() -> Options {
{
file_filter: accept_entry,
directory_filter: accept_entry,
type_: Files,
lstat: false,
always_stat: false,
depth: 2147483647,
}
}