Skip to main content

Module devshell

Module devshell 

Source
Expand description

Devshell REPL and VFS: same logic as the cargo-devshell binary, exposed so tests can cover it.

Modules§

command
Command execution: ExecContext, redirects, and builtin dispatch (pwd, cd, ls, mkdir, cat, touch, echo, export-readonly, save, todo, exit/quit).
completion
Tab completion: context parsing (command vs path), command and path candidates. Rustyline Helper (Completer, Hinter, Highlighter, Validator) for command and path completion.
host_text
Read text from the host filesystem in a Windows-friendly way.
parser
sandbox
Sandbox: export VFS to a temp dir for isolated execution (e.g. rustup/cargo), then sync back.
script
Script execution: parse script to AST (assign, command, if/for/while, source), then interpret.
serialization
.bin format: magic “DEVS” + version + cwd + root node tree.
session_store
Session persistence for devshell.
todo_io
File I/O for todo list (.todo.json). Same format as xtask so dev_shell and cargo xtask todo share data.
vfs
Virtual filesystem for the devshell.
vm
Optional session-scoped VM execution (γ CLI / β sidecar): host SessionHolder::Host, Unix γ SessionHolder::Gamma.
workspace
Workspace abstraction: Mode S (MemoryVfsBackend) vs Mode P (GuestPrimaryBackend).

Enums§

RunWithError
Error from run_with (usage or REPL failure).

Functions§

run_main
Run the devshell using process args and standard I/O (for the binary).
run_main_from_args
Same as run_main but takes args, is_tty, and streams (for tests and callers that supply I/O).
run_with
Run the devshell with given args and streams (for tests).