Expand description
A collection of typical RIOT shell commmands, implemented in Rust
They serve three purposes:
- They are examples of how to use particular functions of RIOT
- They are a test case for comparing string formatting overhead (both C vs. standard Rust and standard Rust vs. potentially upcoming ufmt based implementations)
- In Rust applications, they can be included instead of the operating system provided shell function, when 2. comes out net positive (especially if no other printfs are around and Rust’s formatting is used for other reasons anyway), possibly also with a Rust based shell prompt.
§Feature flags
-
shell
(enabled by default) — Build theall
function that depends on shell presence. This is default because it is the main function of the module, but can be disabled for situations when no shell is present but the shell commands (which are often generic enough to write into any writer) are used for different purposes (for example to provide a textualps
output over a network connection). -
static
(enabled by default) — Register all built commands with their default names and descriptions through XFA for any RIOT shell.This is enabled by default.
-
saul
— Include components that depend on SAUL presence -
ztimer
— Include components that depend on ztimer presence -
nightly_docs
— Enable documentation enhancements that depend on nightlyCurrently, this just enables doc_auto_cfg.