Exemplo n.º 1
0
Arquivo: eval.go Projeto: jbert/gol
func (e *Evaluator) evalList(nl *gol.NodeList) (gol.Node, error) {
	nodes, err := nl.Map(func(child gol.Node) (gol.Node, error) {
		newVal, err := e.Eval(child)
		if err != nil {
			return nil, err
		}
		return newVal, nil
	})
	if err != nil {
		return nil, err
	}

	if e.Quoting() {
		return nodes, nil
	}

	return e.Apply(nodes)
}