ion-shell 1.0.1

The Ion Shell
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# Shell Expand Module

This module reduces statements into a set of word token primitives, and applies expansions to these tokens accordingly.
In order to be modular, the expansion logic is supplied with a structure containing closure references, which are
provided higher up by the shell.

## Tokenizing Words

The `words` module contains the `WordIterator` which reduces statments into set of `WordTokens`. The following are
supported word tokens:

- `Normal(&str)`: Normal words that do not require any expansion at all
- `Whitespace(&str)`: Whitespace between words
- `Variable(&str, bool)`: A variable name and an indication of if it was quoted
- `Process(&str, bool)`: A subshell and an indication of if it was quoted
- `Tilde(&str)`: A tilde expression such as ~ or ~user
- `Brace(Vec<&str>)`: A brace expansion and each of its inner elements