package complete
import (
)
func (, parse.Node) bool {
return reflect.TypeOf() == reflect.TypeOf()
}
var (
aChunk = &parse.Chunk{}
aPipeline = &parse.Pipeline{}
aForm = &parse.Form{}
aArray = &parse.Array{}
aIndexing = &parse.Indexing{}
aPrimary = &parse.Primary{}
aRedir = &parse.Redir{}
aSep = &parse.Sep{}
)
func ( *parse.Primary, PureEvaler) (*parse.Compound, string) {
, := parent().(*parse.Indexing)
if ! {
return nil, ""
}
, := parent().(*parse.Compound)
if ! {
return nil, ""
}
, := .PurelyEvalPartialCompound(, .To)
if ! {
return nil, ""
}
return ,
}
func ( *parse.Form, string, int, PureEvaler) []string {
, := .PurelyEvalPartialCompound(.Head, -1)
:= []string{}
for , := range .Args {
if .Range().From >= {
break
}
if , := .PurelyEvalCompound(); {
= append(, )
}
}
= append(, )
return
}