Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type SimpleExpandContext ¶
type SimpleExpandContext struct {
HomeDir string
}
type SimpleExpandInfo ¶
type SimpleExpandInfo struct { HasTilde bool // only ~ as the first character when SimpleExpandContext.HomeDir is set HasVar bool // $x, $$, ${...} HasGlob bool // *, ?, [, { HasExtGlob bool // ?(...) ... ?*+@! HasHistory bool // ! (anywhere) HasSpecial bool // subshell, arith }
func SimpleExpandPartialWord ¶
func SimpleExpandPartialWord(ectx SimpleExpandContext, partialWord string, multiPart bool) (string, SimpleExpandInfo)
func SimpleExpandWord ¶
func SimpleExpandWord(ectx SimpleExpandContext, word *syntax.Word, sourceStr string) (string, SimpleExpandInfo)
simple word expansion expands: literals, single-quoted strings, double-quoted strings (recursively) does *not* expand: params (variables), command substitution, arithmetic expressions, process substituions, globs for the not expands, they will show up as the literal string this is different than expand.Literal which will replace variables as empty string if they aren't defined. so "a"'foo'${bar}$x => "afoo${bar}$x", but expand.Literal would produce => "afoo" note will do ~ expansion (will not do ~user expansion)
Click to show internal directories.
Click to hide internal directories.