LocalExecutionEnv class final

Local ExecutionEnv: LocalFileSystem plus LocalShell.

Exported only from lib/io.dart.

Implemented types

Constructors

LocalExecutionEnv({String? cwd, Shell? shell})
Creates a LocalExecutionEnv rooted at cwd.

Properties

backgroundJobsSupported bool
Whether startShellJob actually works here. Decorators forward their delegate's answer, so wrapping an env never fakes the capability.
no setteroverride
cwd String
Current working directory for relative paths.
no setteroverride
hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

absolutePath(String path) Future<Result<String, FileError>>
Returns an absolute addressed path without requiring it to exist and without resolving symlinks.
override
appendFile(String path, String content) Future<Result<void, FileError>>
Creates or appends to a file, creating parent directories.
override
createDir(String path, {bool recursive = true}) Future<Result<void, FileError>>
Creates a directory. When recursive is true (the default), missing parents are created too.
override
exec(String command, {ShellExecOptions? options}) Future<Result<ShellExecResult, ExecutionError>>
Executes a shell command. Must never throw: all failures are encoded in the returned Result.
override
exists(String path) Future<Result<bool, FileError>>
Returns false for missing paths; other errors surface as Err.
override
fileInfo(String path) Future<Result<FileInfo, FileError>>
Returns metadata for the addressed path without following symlinks.
override
joinPath(List<String> parts) Future<Result<String, FileError>>
Joins path segments in the filesystem namespace without requiring the result to exist.
override
listDir(String path) Future<Result<List<FileInfo>, FileError>>
Lists the direct children of a directory.
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
readBinaryFile(String path) Future<Result<Uint8List, FileError>>
Reads the file as raw bytes.
override
readTextFile(String path) Future<Result<String, FileError>>
Reads a UTF-8 text file.
override
readTextLines(String path, {int? maxLines}) Future<Result<List<String>, FileError>>
Reads UTF-8 text lines. Implementations should stop once maxLines lines have been read.
override
remove(String path, {bool recursive = false, bool force = false}) Future<Result<void, FileError>>
Removes a file or directory. With force, a missing path is not an error.
override
startShellJob(String command, {required String id, required String logPath, ShellExecOptions? options}) Future<Result<ShellJob, ExecutionError>>
Starts command detached: stdout/stderr append to logPath and the returned ShellJob keeps running until it exits or is stopped. ShellExecOptions.timeout and ShellExecOptions.cancelToken still apply (both stop the job).
override
toString() String
A string representation of this object.
inherited
writeBinaryFile(String path, Uint8List content) Future<Result<void, FileError>>
Writes raw bytes to a file, creating parent directories.
override
writeFile(String path, String content) Future<Result<void, FileError>>
Creates or overwrites a file, creating parent directories.
override

Operators

operator ==(Object other) bool
The equality operator.
inherited