// Code generated by "stringer -type=Exp"; DO NOT EDIT.

package symbols

import "strconv"

func _() {
	// An "invalid array index" compiler error signifies that the constant values have changed.
	// Re-run the stringer command to generate them again.
	var x [1]struct{}
	_ = x[Undefined-0]
	_ = x[Unexpected-2]
	_ = x[InvalidHyphen-3]
	_ = x[SubExpressionEnd-4]
	_ = x[ObjectEnd-5]
	_ = x[ArrayEnd-6]
	_ = x[DataValues-7]
	_ = x[Bareword-8]
	_ = x[SubExpressionBegin-9]
	_ = x[ObjectBegin-10]
	_ = x[ArrayBegin-11]
	_ = x[QuoteSingle-12]
	_ = x[QuoteDouble-13]
	_ = x[QuoteParenthesis-14]
	_ = x[Number-15]
	_ = x[Boolean-16]
	_ = x[Null-17]
	_ = x[Calculated-18]
	_ = x[Operations-19]
	_ = x[Assign-20]
	_ = x[AssignAndAdd-21]
	_ = x[AssignAndSubtract-22]
	_ = x[AssignAndDivide-23]
	_ = x[AssignAndMultiply-24]
	_ = x[EqualTo-25]
	_ = x[NotEqualTo-26]
	_ = x[Like-27]
	_ = x[NotLike-28]
	_ = x[Regexp-29]
	_ = x[NotRegexp-30]
	_ = x[GreaterThan-31]
	_ = x[GreaterThanOrEqual-32]
	_ = x[LessThan-33]
	_ = x[LessThanOrEqual-34]
	_ = x[Add-35]
	_ = x[Subtract-36]
	_ = x[Multiply-37]
	_ = x[Divide-38]
}

const (
	_Exp_name_0 = "Undefined"
	_Exp_name_1 = "UnexpectedInvalidHyphenSubExpressionEndObjectEndArrayEndDataValuesBarewordSubExpressionBeginObjectBeginArrayBeginQuoteSingleQuoteDoubleQuoteParenthesisNumberBooleanNullCalculatedOperationsAssignAssignAndAddAssignAndSubtractAssignAndDivideAssignAndMultiplyEqualToNotEqualToLikeNotLikeRegexpNotRegexpGreaterThanGreaterThanOrEqualLessThanLessThanOrEqualAddSubtractMultiplyDivide"
)

var (
	_Exp_index_1 = [...]uint16{0, 10, 23, 39, 48, 56, 66, 74, 92, 103, 113, 124, 135, 151, 157, 164, 168, 178, 188, 194, 206, 223, 238, 255, 262, 272, 276, 283, 289, 298, 309, 327, 335, 350, 353, 361, 369, 375}
)

func (i Exp) String() string {
	switch {
	case i == 0:
		return _Exp_name_0
	case 2 <= i && i <= 38:
		i -= 2
		return _Exp_name_1[_Exp_index_1[i]:_Exp_index_1[i+1]]
	default:
		return "Exp(" + strconv.FormatInt(int64(i), 10) + ")"
	}
}
