func (i ItemType) precedence() int {
	switch i {
	case ItemLOR:
		return 1
	case ItemLAND, ItemLUnless:
		return 2
	case ItemEQL, ItemNEQ, ItemLTE, ItemLSS, ItemGTE, ItemGTR:
		return 3
	case ItemADD, ItemSUB:
		return 4
	case ItemMUL, ItemDIV, ItemMOD:
		return 5
	case ItemPOW:
		return 6
	default:
		return LowestPrec
	}
}
func (i ItemType) precedence() int {
	switch i {
	case ItemLOR:
		return 1
	case ItemLAND, ItemLUnless:
		return 2
	case ItemEQL, ItemNEQ, ItemLTE, ItemLSS, ItemGTE, ItemGTR:
		return 3
	case ItemADD, ItemSUB:
		return 4
	case ItemMUL, ItemDIV, ItemMOD:
		return 5
	case ItemPOW:
		return 6
	default:
		return LowestPrec
	}
}
func ( i ItemType ) precedence ( ) int { switch i { case ItemLOR : return 1 case ItemLAND , ItemLUnless : return 2 case ItemEQL , ItemNEQ , ItemLTE , ItemLSS , ItemGTE , ItemGTR : return 3 case ItemADD , ItemSUB : return 4 case ItemMUL , ItemDIV , ItemMOD : return 5 case ItemPOW : return 6 default : return LowestPrec } }
// Precedence returns the operator precedence of the binary
// operator op. If op is not a binary operator, the result
// is LowestPrec.
Precedence returns the operator precedence of the binary operator op . If op is not a binary operator the result is LowestPrec .