22 lines
359 B
Go
22 lines
359 B
Go
package parser
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
"github.com/d5/tengo/compiler/source"
|
|
)
|
|
|
|
// Error represents a parser error.
|
|
type Error struct {
|
|
Pos source.FilePos
|
|
Msg string
|
|
}
|
|
|
|
func (e Error) Error() string {
|
|
if e.Pos.Filename != "" || e.Pos.IsValid() {
|
|
return fmt.Sprintf("Parse Error: %s\n\tat %s", e.Msg, e.Pos)
|
|
}
|
|
|
|
return fmt.Sprintf("Parse Error: %s", e.Msg)
|
|
}
|