func (se ParseError) Error() string {
	if se.LineNo == 0 && se.FileName == "" {
		return se.Message
	}
	return fmt.Sprintf("%s:%d %s => '%s'", se.FileName, se.LineNo, se.Message, se.LineText)
}
Error prints error with filename, line number, error message and step text.
package parser
import "fmt"
type ParseError struct {
	FileName string
	LineNo   int
	SpanEnd  int
	Message  string
	LineText string
}