Skip to main content

Module item_shape

Module item_shape 

Source
Expand description

What the values behind a loop variable or a piped stream can look like, as far as flags go.

The locus bindings beside this one say WHERE such a value points. They cannot say whether the value is a flag: for f in -delete and echo -delete | xargs both bind something that reads as a worktree path while the command receives -delete.

Structs§

Facts
A small set of yes/no facts, one bit each. T names what they are facts about, so a bit that means one thing in one set cannot be tested in another.
ItemShapeGuard

Enums§

Binding
What $name is bound to, by super::expand_vars’ precedence: a loop (unknown items) or a certain value.
Items
Marks the facts about a set of values a variable or stream may take.

Constants§

EMPTY
Some value may be empty, so an unquoted use becomes none.
LEAD
Some value may begin with -.
SPLIT
Some value may hold a blank, so an unquoted use becomes several words.
UNKNOWN
Nothing is known about the values.

Functions§

binding
bound_names
Every name a loop or an assignment has bound so far.
enter_loop_shape
enter_stdin_shape
loop_shape
The innermost shape bound to name; UNKNOWN when none is.
stdin_shape
The shape of the items on stdin; UNKNOWN when no stage set one.

Type Aliases§

ItemShape