func (parser *Parser) appendErrorAt(pos string, message string) {
	var err error
	if pos != "" {
		err = fmt.Errorf("%s %s", pos, message)
	} else {
		err = errors.New(message)
	}
	parser.errors = append(parser.errors, err)
}
appendError adds an error to the stack.
package parser
import (
	"fmt"
	"reflect"
	"sort"
	"github.com/elliotchance/ok/ast"
	"github.com/elliotchance/ok/lexer"
	"github.com/elliotchance/ok/types"
	"github.com/pkg/errors"
)
type Parser struct {
	errors        []error
	funcs         map[string]*ast.Func
	tests         []*ast.Test
	finalizers    map[string][]*ast.Finally
	functionNames []string
	imports       map[string]string
	comments      []*ast.Comment
	anonFunctionName int
	Constants map[string]*ast.Literal
	tokens []lexer.Token
}