func (a *Token) Equal(b *Token) bool {
	if a == nil || b == nil {
		return false
	}
	if a.tokenType != b.tokenType {
		return false
	}
	return a.value == b.value
}
func (a *Token) Equal(b *Token) bool {
	if a == nil || b == nil {
		return false
	}
	if a.tokenType != b.tokenType {
		return false
	}
	return a.value == b.value
}
func ( a * Token ) Equal ( b * Token ) bool { if a == nil || b == nil { return false } if a . tokenType != b . tokenType { return false } return a . value == b . value }
// Equal reports whether tokens a, and b, are equal.
// Two tokens are equal if both their types and values are equal. A nil token can
// never be equal to another token.
Equal reports whether tokens a and b are equal . Two tokens are equal if both their types and values are equal . A nil token can never be equal to another token .