Versions in this module Expand all Collapse all v0 v0.0.2 Dec 22, 2023 v0.0.1 Dec 22, 2023 Changes in this version + func Identifiers(str string) ([]string, error) + func Interpolate(env Env, str string) (string, error) + type EmptyValueExpansion struct + Content Expression + Identifier string + func (e EmptyValueExpansion) Expand(env Env) (string, error) + func (e EmptyValueExpansion) Identifiers() []string + type Env interface + Get func(key string) (string, bool) + func NewMapEnv(env map[string]string) Env + func NewSliceEnv(env []string) Env + type Expansion interface + Expand func(env Env) (string, error) + Identifiers func() []string + type Expression []ExpressionItem + func (e Expression) Expand(env Env) (string, error) + func (e Expression) Identifiers() []string + type ExpressionItem struct + Expansion Expansion + Text string + func (i ExpressionItem) String() string + type Parser struct + func NewParser(str string) *Parser + func (p *Parser) Parse() (Expression, error) + type RequiredExpansion struct + Identifier string + Message Expression + func (e RequiredExpansion) Expand(env Env) (string, error) + func (e RequiredExpansion) Identifiers() []string + type SubstringExpansion struct + HasLength bool + Identifier string + Length int + Offset int + func (e SubstringExpansion) Expand(env Env) (string, error) + func (e SubstringExpansion) Identifiers() []string + type UnsetValueExpansion struct + Content Expression + Identifier string + func (e UnsetValueExpansion) Expand(env Env) (string, error) + func (e UnsetValueExpansion) Identifiers() []string + type VariableExpansion struct + Identifier string + func (e VariableExpansion) Expand(env Env) (string, error) + func (e VariableExpansion) Identifiers() []string