jingmo653/sshconfig-resolve/loader does not have a README file
pub(open) trait FileSystem {
fn read_text(Self, String, max_bytes? : Int) -> Result[String, FileSystemError]
fn canonical_identity(Self, String) -> Result[String, FileSystemError]
fn glob(Self, String, max_matches? : Int) -> Result[Array[String], FileSystemError]
fn home_dir(Self) -> String?
}pub(all) suberror LoadError {
ReadFailed(path~ : String, message~ : String)
IncludeCycle(chain~ : Array[String])
IncludeDepthExceeded(limit~ : Int, chain~ : Array[String])
FileLimitExceeded(limit~ : Int)
FileTooLarge(path~ : String, limit~ : Int)
TotalBytesExceeded(limit~ : Int)
GlobLimitExceeded(path~ : String, limit~ : Int)
IncludeArgumentLimitExceeded(limit~ : Int, location~ : SourceLocation)
InvalidInclude(location~ : SourceLocation, message~ : String)
ParseFailed(location~ : SourceLocation, message~ : String)
InvalidOptions(message~ : String)
Detailed(failure~ : LoadFailure)
} derive(Eq, Debug)pub(all) enum LoadDiagnostic {
MissingInclude(path~ : String, included_from~ : SourceLocation?)
} derive(Eq, Debug)pub(all) struct LoadFailure {
kind : LoadFailureKind
attempted_path : String
location : SourceLocation?
include_location : SourceLocation?
chain : Array[String]
message : String
} derive(Eq, Debug)pub(all) enum LoadFailureKind {
ReadFailed
GlobFailed
IncludeCycle
IncludeDepthExceeded(limit~ : Int)
FileLimitExceeded(limit~ : Int)
FileTooLarge(limit~ : Int)
TotalBytesExceeded(limit~ : Int)
GlobLimitExceeded(limit~ : Int)
IncludeArgumentLimitExceeded(limit~ : Int)
InvalidInclude
ParseFailed
InvalidOptions
} derive(Eq, Debug)pub(all) struct LoadOptions {
max_depth : Int
max_files : Int
max_file_bytes : Int
max_total_bytes : Int
max_glob_matches : Int
max_include_arguments : Int
missing_include : MissingIncludePolicy
relative_include_base : String?
} derive(Eq, Debug)pub(all) struct LoadedConfig {
config : Config
sources : Array[SourceFile]
diagnostics : Array[LoadDiagnostic]
} derive(Eq, Debug)pub struct MemoryFileSystem {
// private fields
}pub(all) struct SourceFile {
identity : String
display_path : String
included_from : SourceLocation?
} derive(Eq, Debug)fn join_path(base : String, child : String) -> Stringfn normalize_path(path : String) -> Stringfn parent_directory(path : String) -> Stringfn path_has_home_prefix(path : String) -> Boolfn path_is_absolute(path : String) -> Boolfn resolve_include_path(including_path : String, include_path : String, home : String?) -> Result[String, String]OpenSSH client configuration parser, evaluator, and explainable resolver for MoonBit.
Dependencies