diff --git a/parser/lexer_error.go b/parser/lexer_error.go new file mode 100644 index 0000000..9eaa98b --- /dev/null +++ b/parser/lexer_error.go @@ -0,0 +1,15 @@ +package parser + +import "asciigoat.org/core/lexer" + +func (p *Parser) emitError(content string, err error) (lexer.StateFn, error) { + err2 := p.OnError(p.pos, content, err) + switch { + case err2 != nil: + // return wrapped error + return nil, err2 + default: + // return original error + return nil, err + } +}