// Code generated by protoc-gen-go. DO NOT EDIT.
// source: google/ads/googleads/v0/errors/function_parsing_error.proto

package errors // import "google.golang.org/genproto/googleapis/ads/googleads/v0/errors"

import proto "github.com/golang/protobuf/proto"
import fmt "fmt"
import math "math"

// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf

// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package

// Enum describing possible function parsing errors.
type FunctionParsingErrorEnum_FunctionParsingError int32

const (
	// Enum unspecified.
	FunctionParsingErrorEnum_UNSPECIFIED FunctionParsingErrorEnum_FunctionParsingError = 0
	// The received error code is not known in this version.
	FunctionParsingErrorEnum_UNKNOWN FunctionParsingErrorEnum_FunctionParsingError = 1
	// Unexpected end of function string.
	FunctionParsingErrorEnum_NO_MORE_INPUT FunctionParsingErrorEnum_FunctionParsingError = 2
	// Could not find an expected character.
	FunctionParsingErrorEnum_EXPECTED_CHARACTER FunctionParsingErrorEnum_FunctionParsingError = 3
	// Unexpected separator character.
	FunctionParsingErrorEnum_UNEXPECTED_SEPARATOR FunctionParsingErrorEnum_FunctionParsingError = 4
	// Unmatched left bracket or parenthesis.
	FunctionParsingErrorEnum_UNMATCHED_LEFT_BRACKET FunctionParsingErrorEnum_FunctionParsingError = 5
	// Unmatched right bracket or parenthesis.
	FunctionParsingErrorEnum_UNMATCHED_RIGHT_BRACKET FunctionParsingErrorEnum_FunctionParsingError = 6
	// Functions are nested too deeply.
	FunctionParsingErrorEnum_TOO_MANY_NESTED_FUNCTIONS FunctionParsingErrorEnum_FunctionParsingError = 7
	// Missing right-hand-side operand.
	FunctionParsingErrorEnum_MISSING_RIGHT_HAND_OPERAND FunctionParsingErrorEnum_FunctionParsingError = 8
	// Invalid operator/function name.
	FunctionParsingErrorEnum_INVALID_OPERATOR_NAME FunctionParsingErrorEnum_FunctionParsingError = 9
	// Feed attribute operand's argument is not an integer.
	FunctionParsingErrorEnum_FEED_ATTRIBUTE_OPERAND_ARGUMENT_NOT_INTEGER FunctionParsingErrorEnum_FunctionParsingError = 10
	// Missing function operands.
	FunctionParsingErrorEnum_NO_OPERANDS FunctionParsingErrorEnum_FunctionParsingError = 11
	// Function had too many operands.
	FunctionParsingErrorEnum_TOO_MANY_OPERANDS FunctionParsingErrorEnum_FunctionParsingError = 12
)

var FunctionParsingErrorEnum_FunctionParsingError_name = map[int32]string{
	0:  "UNSPECIFIED",
	1:  "UNKNOWN",
	2:  "NO_MORE_INPUT",
	3:  "EXPECTED_CHARACTER",
	4:  "UNEXPECTED_SEPARATOR",
	5:  "UNMATCHED_LEFT_BRACKET",
	6:  "UNMATCHED_RIGHT_BRACKET",
	7:  "TOO_MANY_NESTED_FUNCTIONS",
	8:  "MISSING_RIGHT_HAND_OPERAND",
	9:  "INVALID_OPERATOR_NAME",
	10: "FEED_ATTRIBUTE_OPERAND_ARGUMENT_NOT_INTEGER",
	11: "NO_OPERANDS",
	12: "TOO_MANY_OPERANDS",
}
var FunctionParsingErrorEnum_FunctionParsingError_value = map[string]int32{
	"UNSPECIFIED":                                 0,
	"UNKNOWN":                                     1,
	"NO_MORE_INPUT":                               2,
	"EXPECTED_CHARACTER":                          3,
	"UNEXPECTED_SEPARATOR":                        4,
	"UNMATCHED_LEFT_BRACKET":                      5,
	"UNMATCHED_RIGHT_BRACKET":                     6,
	"TOO_MANY_NESTED_FUNCTIONS":                   7,
	"MISSING_RIGHT_HAND_OPERAND":                  8,
	"INVALID_OPERATOR_NAME":                       9,
	"FEED_ATTRIBUTE_OPERAND_ARGUMENT_NOT_INTEGER": 10,
	"NO_OPERANDS":                                 11,
	"TOO_MANY_OPERANDS":                           12,
}

func (x FunctionParsingErrorEnum_FunctionParsingError) String() string {
	return proto.EnumName(FunctionParsingErrorEnum_FunctionParsingError_name, int32(x))
}
func (FunctionParsingErrorEnum_FunctionParsingError) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_function_parsing_error_7d588ab51e2c900d, []int{0, 0}
}

// Container for enum describing possible function parsing errors.
type FunctionParsingErrorEnum struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *FunctionParsingErrorEnum) Reset()         { *m = FunctionParsingErrorEnum{} }
func (m *FunctionParsingErrorEnum) String() string { return proto.CompactTextString(m) }
func (*FunctionParsingErrorEnum) ProtoMessage()    {}
func (*FunctionParsingErrorEnum) Descriptor() ([]byte, []int) {
	return fileDescriptor_function_parsing_error_7d588ab51e2c900d, []int{0}
}
func (m *FunctionParsingErrorEnum) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FunctionParsingErrorEnum.Unmarshal(m, b)
}
func (m *FunctionParsingErrorEnum) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FunctionParsingErrorEnum.Marshal(b, m, deterministic)
}
func (dst *FunctionParsingErrorEnum) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FunctionParsingErrorEnum.Merge(dst, src)
}
func (m *FunctionParsingErrorEnum) XXX_Size() int {
	return xxx_messageInfo_FunctionParsingErrorEnum.Size(m)
}
func (m *FunctionParsingErrorEnum) XXX_DiscardUnknown() {
	xxx_messageInfo_FunctionParsingErrorEnum.DiscardUnknown(m)
}

var xxx_messageInfo_FunctionParsingErrorEnum proto.InternalMessageInfo

func init() {
	proto.RegisterType((*FunctionParsingErrorEnum)(nil), "google.ads.googleads.v0.errors.FunctionParsingErrorEnum")
	proto.RegisterEnum("google.ads.googleads.v0.errors.FunctionParsingErrorEnum_FunctionParsingError", FunctionParsingErrorEnum_FunctionParsingError_name, FunctionParsingErrorEnum_FunctionParsingError_value)
}

func init() {
	proto.RegisterFile("google/ads/googleads/v0/errors/function_parsing_error.proto", fileDescriptor_function_parsing_error_7d588ab51e2c900d)
}

var fileDescriptor_function_parsing_error_7d588ab51e2c900d = []byte{
	// 472 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x7c, 0x92, 0xcf, 0x6e, 0xd3, 0x40,
	0x10, 0xc6, 0x49, 0x02, 0x2d, 0x6c, 0x40, 0x6c, 0x57, 0x6d, 0x69, 0x8a, 0xc8, 0x21, 0x57, 0x24,
	0x3b, 0x12, 0x37, 0xf7, 0xb4, 0xb1, 0x27, 0xce, 0xaa, 0xf5, 0xac, 0xb5, 0x5e, 0x87, 0x3f, 0x8a,
	0xb4, 0x0a, 0x4d, 0xb0, 0x22, 0xb5, 0x76, 0x64, 0xb7, 0x7d, 0x00, 0x1e, 0x85, 0x23, 0x8f, 0xc2,
	0x7b, 0x70, 0xe1, 0xcc, 0x03, 0x20, 0x67, 0x13, 0xf7, 0x52, 0x7a, 0xf2, 0xe8, 0xfb, 0xbe, 0xdf,
	0x78, 0xb4, 0x33, 0xe4, 0x2c, 0x2b, 0x8a, 0xec, 0x6a, 0xe9, 0xce, 0x17, 0x95, 0x6b, 0xcb, 0xba,
	0xba, 0x1b, 0xba, 0xcb, 0xb2, 0x2c, 0xca, 0xca, 0xfd, 0x76, 0x9b, 0x5f, 0xde, 0xac, 0x8a, 0xdc,
	0xac, 0xe7, 0x65, 0xb5, 0xca, 0x33, 0xb3, 0xd1, 0x9d, 0x75, 0x59, 0xdc, 0x14, 0xac, 0x6f, 0x09,
	0x67, 0xbe, 0xa8, 0x9c, 0x06, 0x76, 0xee, 0x86, 0x8e, 0x85, 0x07, 0xdf, 0x3b, 0xe4, 0x64, 0xbc,
	0x6d, 0x10, 0x5b, 0x1e, 0x6a, 0x07, 0xf2, 0xdb, 0xeb, 0xc1, 0xef, 0x36, 0x39, 0x7c, 0xc8, 0x64,
	0xaf, 0x49, 0x37, 0xc5, 0x24, 0x06, 0x5f, 0x8c, 0x05, 0x04, 0xf4, 0x09, 0xeb, 0x92, 0xfd, 0x14,
	0xcf, 0x51, 0x7e, 0x44, 0xda, 0x62, 0x07, 0xe4, 0x15, 0x4a, 0x13, 0x49, 0x05, 0x46, 0x60, 0x9c,
	0x6a, 0xda, 0x66, 0xc7, 0x84, 0xc1, 0xa7, 0x18, 0x7c, 0x0d, 0x81, 0xf1, 0x27, 0x5c, 0x71, 0x5f,
	0x83, 0xa2, 0x1d, 0x76, 0x42, 0x0e, 0x53, 0x6c, 0x9c, 0x04, 0x62, 0xae, 0xb8, 0x96, 0x8a, 0x3e,
	0x65, 0xa7, 0xe4, 0x38, 0xc5, 0x88, 0x6b, 0x7f, 0x02, 0x81, 0xb9, 0x80, 0xb1, 0x36, 0x23, 0xc5,
	0xfd, 0x73, 0xd0, 0xf4, 0x19, 0x7b, 0x4b, 0xde, 0xdc, 0x7b, 0x4a, 0x84, 0x93, 0x7b, 0x73, 0x8f,
	0xbd, 0x23, 0x3d, 0x2d, 0xa5, 0x89, 0x38, 0x7e, 0x36, 0x08, 0x49, 0xdd, 0x77, 0x9c, 0xa2, 0xaf,
	0x85, 0xc4, 0x84, 0xee, 0xb3, 0x3e, 0x39, 0x8d, 0x44, 0x92, 0x08, 0x0c, 0xb7, 0xe4, 0x84, 0x63,
	0x60, 0x64, 0x0c, 0x8a, 0x63, 0x40, 0x9f, 0xb3, 0x1e, 0x39, 0x12, 0x38, 0xe5, 0x17, 0x62, 0x2b,
	0x6a, 0xa9, 0x0c, 0xf2, 0x08, 0xe8, 0x0b, 0xe6, 0x92, 0xf7, 0x63, 0x80, 0xc0, 0x70, 0xad, 0x95,
	0x18, 0xa5, 0x1a, 0x76, 0x98, 0xe1, 0x2a, 0x4c, 0x23, 0x40, 0x6d, 0x50, 0x6a, 0x23, 0x50, 0x43,
	0x08, 0x8a, 0x92, 0xfa, 0x99, 0x50, 0xee, 0x42, 0x09, 0xed, 0xb2, 0x23, 0x72, 0xd0, 0xcc, 0xd6,
	0xc8, 0x2f, 0x47, 0x7f, 0x5b, 0x64, 0x70, 0x59, 0x5c, 0x3b, 0x8f, 0xef, 0x6a, 0xd4, 0x7b, 0x68,
	0x17, 0x71, 0xbd, 0xe6, 0xb8, 0xf5, 0x25, 0xd8, 0xc2, 0x59, 0x71, 0x35, 0xcf, 0x33, 0xa7, 0x28,
	0x33, 0x37, 0x5b, 0xe6, 0x9b, 0x23, 0xd8, 0x5d, 0xcd, 0x7a, 0x55, 0xfd, 0xef, 0x88, 0xce, 0xec,
	0xe7, 0x47, 0xbb, 0x13, 0x72, 0xfe, 0xb3, 0xdd, 0x0f, 0x6d, 0x33, 0xbe, 0xa8, 0x1c, 0x5b, 0xd6,
	0xd5, 0x74, 0xe8, 0x6c, 0x7e, 0x59, 0xfd, 0xda, 0x05, 0x66, 0x7c, 0x51, 0xcd, 0x9a, 0xc0, 0x6c,
	0x3a, 0x9c, 0xd9, 0xc0, 0x9f, 0xf6, 0xc0, 0xaa, 0x9e, 0xc7, 0x17, 0x95, 0xe7, 0x35, 0x11, 0xcf,
	0x9b, 0x0e, 0x3d, 0xcf, 0x86, 0xbe, 0xee, 0x6d, 0xa6, 0xfb, 0xf0, 0x2f, 0x00, 0x00, 0xff, 0xff,
	0x84, 0xaa, 0x6f, 0x16, 0xe1, 0x02, 0x00, 0x00,
}
