func (p Pos) Before(u Pos) bool {
	return u.Offset > p.Offset || u.Line > p.Line
}
Before reports whether the position p is before u.
package token
import "fmt"
type Pos struct {
	Filename string  
	Offset   int     
	Line     int     
	Column   int     
}
func (p *Pos) IsValid() bool { return p.Line > 0 }
func (p Pos) String() string {
	s := p.Filename
	if p.IsValid() {
		if s != "" {
			s += ":"
		}
		s += fmt.Sprintf("%d:%d", p.Line, p.Column)
	}
	if s == "" {
		s = "-"
	}
	return s
}