// Code generated by protoc-gen-gogo. DO NOT EDIT.
// source: validator.proto

package validator

import (
	fmt "fmt"
	proto "github.com/gogo/protobuf/proto"
	descriptor "github.com/gogo/protobuf/protoc-gen-gogo/descriptor"
	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.GoGoProtoPackageIsVersion2 // please upgrade the proto package

type FieldValidator struct {
	// Uses a Golang RE2-syntax regex to match the field contents.
	Regex *string `protobuf:"bytes,1,opt,name=regex" json:"regex,omitempty"`
	// Field value of integer strictly greater than this value.
	IntGt *int64 `protobuf:"varint,2,opt,name=int_gt,json=intGt" json:"int_gt,omitempty"`
	// Field value of integer strictly smaller than this value.
	IntLt *int64 `protobuf:"varint,3,opt,name=int_lt,json=intLt" json:"int_lt,omitempty"`
	// Used for nested message types, requires that the message type exists.
	MsgExists *bool `protobuf:"varint,4,opt,name=msg_exists,json=msgExists" json:"msg_exists,omitempty"`
	// Human error specifies a user-customizable error that is visible to the user.
	HumanError *string `protobuf:"bytes,5,opt,name=human_error,json=humanError" json:"human_error,omitempty"`
	// Field value of double strictly greater than this value.
	// Note that this value can only take on a valid floating point
	// value. Use together with float_epsilon if you need something more specific.
	FloatGt *float64 `protobuf:"fixed64,6,opt,name=float_gt,json=floatGt" json:"float_gt,omitempty"`
	// Field value of double strictly smaller than this value.
	// Note that this value can only take on a valid floating point
	// value. Use together with float_epsilon if you need something more specific.
	FloatLt *float64 `protobuf:"fixed64,7,opt,name=float_lt,json=floatLt" json:"float_lt,omitempty"`
	// Field value of double describing the epsilon within which
	// any comparison should be considered to be true. For example,
	// when using float_gt = 0.35, using a float_epsilon of 0.05
	// would mean that any value above 0.30 is acceptable. It can be
	// thought of as a {float_value_condition} +- {float_epsilon}.
	// If unset, no correction for floating point inaccuracies in
	// comparisons will be attempted.
	FloatEpsilon *float64 `protobuf:"fixed64,8,opt,name=float_epsilon,json=floatEpsilon" json:"float_epsilon,omitempty"`
	// Floating-point value compared to which the field content should be greater or equal.
	FloatGte *float64 `protobuf:"fixed64,9,opt,name=float_gte,json=floatGte" json:"float_gte,omitempty"`
	// Floating-point value compared to which the field content should be smaller or equal.
	FloatLte *float64 `protobuf:"fixed64,10,opt,name=float_lte,json=floatLte" json:"float_lte,omitempty"`
	// Used for string fields, requires the string to be not empty (i.e different from "").
	StringNotEmpty *bool `protobuf:"varint,11,opt,name=string_not_empty,json=stringNotEmpty" json:"string_not_empty,omitempty"`
	// Repeated field with at least this number of elements.
	RepeatedCountMin *int64 `protobuf:"varint,12,opt,name=repeated_count_min,json=repeatedCountMin" json:"repeated_count_min,omitempty"`
	// Repeated field with at most this number of elements.
	RepeatedCountMax *int64 `protobuf:"varint,13,opt,name=repeated_count_max,json=repeatedCountMax" json:"repeated_count_max,omitempty"`
	// Field value of length greater than this value.
	LengthGt *int64 `protobuf:"varint,14,opt,name=length_gt,json=lengthGt" json:"length_gt,omitempty"`
	// Field value of length smaller than this value.
	LengthLt *int64 `protobuf:"varint,15,opt,name=length_lt,json=lengthLt" json:"length_lt,omitempty"`
	// Field value of integer strictly equal this value.
	LengthEq *int64 `protobuf:"varint,16,opt,name=length_eq,json=lengthEq" json:"length_eq,omitempty"`
	// Requires that the value is in the enum.
	IsInEnum *bool `protobuf:"varint,17,opt,name=is_in_enum,json=isInEnum" json:"is_in_enum,omitempty"`
	// Ensures that a string value is in UUID format.
	// uuid_ver specifies the valid UUID versions. Valid values are: 0-5.
	// If uuid_ver is 0 all UUID versions are accepted.
	UuidVer              *int32   `protobuf:"varint,18,opt,name=uuid_ver,json=uuidVer" json:"uuid_ver,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

var xxx_messageInfo_FieldValidator proto.InternalMessageInfo

func (m *FieldValidator) GetRegex() string {
	if m != nil && m.Regex != nil {
		return *m.Regex
	}
	return ""
}

func (m *FieldValidator) GetIntGt() int64 {
	if m != nil && m.IntGt != nil {
		return *m.IntGt
	}
	return 0
}

func (m *FieldValidator) GetIntLt() int64 {
	if m != nil && m.IntLt != nil {
		return *m.IntLt
	}
	return 0
}

func (m *FieldValidator) GetMsgExists() bool {
	if m != nil && m.MsgExists != nil {
		return *m.MsgExists
	}
	return false
}

func (m *FieldValidator) GetHumanError() string {
	if m != nil && m.HumanError != nil {
		return *m.HumanError
	}
	return ""
}

func (m *FieldValidator) GetFloatGt() float64 {
	if m != nil && m.FloatGt != nil {
		return *m.FloatGt
	}
	return 0
}

func (m *FieldValidator) GetFloatLt() float64 {
	if m != nil && m.FloatLt != nil {
		return *m.FloatLt
	}
	return 0
}

func (m *FieldValidator) GetFloatEpsilon() float64 {
	if m != nil && m.FloatEpsilon != nil {
		return *m.FloatEpsilon
	}
	return 0
}

func (m *FieldValidator) GetFloatGte() float64 {
	if m != nil && m.FloatGte != nil {
		return *m.FloatGte
	}
	return 0
}

func (m *FieldValidator) GetFloatLte() float64 {
	if m != nil && m.FloatLte != nil {
		return *m.FloatLte
	}
	return 0
}

func (m *FieldValidator) GetStringNotEmpty() bool {
	if m != nil && m.StringNotEmpty != nil {
		return *m.StringNotEmpty
	}
	return false
}

func (m *FieldValidator) GetRepeatedCountMin() int64 {
	if m != nil && m.RepeatedCountMin != nil {
		return *m.RepeatedCountMin
	}
	return 0
}

func (m *FieldValidator) GetRepeatedCountMax() int64 {
	if m != nil && m.RepeatedCountMax != nil {
		return *m.RepeatedCountMax
	}
	return 0
}

func (m *FieldValidator) GetLengthGt() int64 {
	if m != nil && m.LengthGt != nil {
		return *m.LengthGt
	}
	return 0
}

func (m *FieldValidator) GetLengthLt() int64 {
	if m != nil && m.LengthLt != nil {
		return *m.LengthLt
	}
	return 0
}

func (m *FieldValidator) GetLengthEq() int64 {
	if m != nil && m.LengthEq != nil {
		return *m.LengthEq
	}
	return 0
}

func (m *FieldValidator) GetIsInEnum() bool {
	if m != nil && m.IsInEnum != nil {
		return *m.IsInEnum
	}
	return false
}

func (m *FieldValidator) GetUuidVer() int32 {
	if m != nil && m.UuidVer != nil {
		return *m.UuidVer
	}
	return 0
}

type OneofValidator struct {
	// Require that one of the oneof fields is set.
	Required             *bool    `protobuf:"varint,1,opt,name=required" json:"required,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

var xxx_messageInfo_OneofValidator proto.InternalMessageInfo

func (m *OneofValidator) GetRequired() bool {
	if m != nil && m.Required != nil {
		return *m.Required
	}
	return false
}

var E_Field = &proto.ExtensionDesc{
	ExtendedType:  (*descriptor.FieldOptions)(nil),
	ExtensionType: (*FieldValidator)(nil),
	Field:         65020,
	Name:          "validator.field",
	Tag:           "bytes,65020,opt,name=field",
	Filename:      "validator.proto",
}

var E_Oneof = &proto.ExtensionDesc{
	ExtendedType:  (*descriptor.OneofOptions)(nil),
	ExtensionType: (*OneofValidator)(nil),
	Field:         65021,
	Name:          "validator.oneof",
	Tag:           "bytes,65021,opt,name=oneof",
	Filename:      "validator.proto",
}

func init() {
	proto.RegisterType((*FieldValidator)(nil), "validator.FieldValidator")
	proto.RegisterType((*OneofValidator)(nil), "validator.OneofValidator")
	proto.RegisterExtension(E_Field)
	proto.RegisterExtension(E_Oneof)
}

func init() { proto.RegisterFile("validator.proto", fileDescriptor_bf1c6ec7c0d80dd5) }

var fileDescriptor_bf1c6ec7c0d80dd5 = []byte{
	// 472 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x6c, 0x93, 0x41, 0x6f, 0xd4, 0x30,
	0x10, 0x85, 0x15, 0xda, 0xb4, 0x89, 0xb7, 0xdd, 0x2e, 0x16, 0x48, 0x6e, 0xa1, 0x22, 0x2a, 0x97,
	0x1c, 0xaa, 0x54, 0xe2, 0xc8, 0x11, 0x14, 0x56, 0x48, 0x0b, 0x45, 0x39, 0xf4, 0xc0, 0xc5, 0x0a,
	0xcd, 0x6c, 0x6a, 0xc9, 0xb1, 0xb3, 0xf6, 0xa4, 0x5a, 0x7e, 0x1d, 0x3f, 0x0c, 0x90, 0x90, 0x1d,
	0xb2, 0x49, 0xa5, 0x3d, 0xce, 0xfb, 0x26, 0x6f, 0xc6, 0xa3, 0x17, 0x72, 0xf6, 0x58, 0x4a, 0x51,
	0x95, 0xa8, 0x4d, 0xd6, 0x1a, 0x8d, 0x9a, 0xc6, 0x3b, 0xe1, 0x22, 0xa9, 0xb5, 0xae, 0x25, 0xdc,
	0x78, 0xf0, 0xa3, 0x5b, 0xdf, 0x54, 0x60, 0xef, 0x8d, 0x68, 0x77, 0xcd, 0x57, 0xbf, 0x0e, 0xc9,
	0xfc, 0x93, 0x00, 0x59, 0xdd, 0x0d, 0x1f, 0xd1, 0x17, 0x24, 0x34, 0x50, 0xc3, 0x96, 0x05, 0x49,
	0x90, 0xc6, 0x45, 0x5f, 0xd0, 0x97, 0xe4, 0x48, 0x28, 0xe4, 0x35, 0xb2, 0x67, 0x49, 0x90, 0x1e,
	0x14, 0xa1, 0x50, 0xb8, 0xc4, 0x41, 0x96, 0xc8, 0x0e, 0x76, 0xf2, 0x0a, 0xe9, 0x25, 0x21, 0x8d,
	0xad, 0x39, 0x6c, 0x85, 0x45, 0xcb, 0x0e, 0x93, 0x20, 0x8d, 0x8a, 0xb8, 0xb1, 0x75, 0xee, 0x05,
	0xfa, 0x86, 0xcc, 0x1e, 0xba, 0xa6, 0x54, 0x1c, 0x8c, 0xd1, 0x86, 0x85, 0x7e, 0x10, 0xf1, 0x52,
	0xee, 0x14, 0x7a, 0x4e, 0xa2, 0xb5, 0xd4, 0xa5, 0x9f, 0x77, 0x94, 0x04, 0x69, 0x50, 0x1c, 0xfb,
	0x7a, 0x89, 0x23, 0x92, 0xc8, 0x8e, 0x27, 0x68, 0x85, 0xf4, 0x2d, 0x39, 0xed, 0x11, 0xb4, 0x56,
	0x48, 0xad, 0x58, 0xe4, 0xf9, 0x89, 0x17, 0xf3, 0x5e, 0xa3, 0xaf, 0x48, 0x3c, 0x58, 0x03, 0x8b,
	0x7d, 0x43, 0xf4, 0xdf, 0x1b, 0x46, 0x28, 0x11, 0x18, 0x99, 0xc0, 0x15, 0x02, 0x4d, 0xc9, 0xc2,
	0xa2, 0x11, 0xaa, 0xe6, 0x4a, 0x23, 0x87, 0xa6, 0xc5, 0x9f, 0x6c, 0xe6, 0x9f, 0x36, 0xef, 0xf5,
	0xaf, 0x1a, 0x73, 0xa7, 0xd2, 0x6b, 0x42, 0x0d, 0xb4, 0x50, 0x22, 0x54, 0xfc, 0x5e, 0x77, 0x0a,
	0x79, 0x23, 0x14, 0x3b, 0xf1, 0x17, 0x5a, 0x0c, 0xe4, 0xa3, 0x03, 0x5f, 0x84, 0xda, 0xd7, 0x5d,
	0x6e, 0xd9, 0xe9, 0xbe, 0xee, 0x72, 0xeb, 0x56, 0x94, 0xa0, 0x6a, 0x7c, 0x70, 0xb7, 0x99, 0xfb,
	0xa6, 0xa8, 0x17, 0x96, 0x38, 0x81, 0x12, 0xd9, 0xd9, 0x14, 0xae, 0xa6, 0x10, 0x36, 0x6c, 0x31,
	0x85, 0xf9, 0x86, 0xbe, 0x26, 0x44, 0x58, 0x2e, 0x14, 0x07, 0xd5, 0x35, 0xec, 0xb9, 0x7f, 0x56,
	0x24, 0xec, 0x67, 0x95, 0xab, 0xae, 0x71, 0x47, 0xef, 0x3a, 0x51, 0xf1, 0x47, 0x30, 0x8c, 0x26,
	0x41, 0x1a, 0x16, 0xc7, 0xae, 0xbe, 0x03, 0x73, 0x75, 0x4d, 0xe6, 0xb7, 0x0a, 0xf4, 0x7a, 0x0c,
	0xd0, 0x05, 0x89, 0x0c, 0x6c, 0x3a, 0x61, 0xa0, 0xf2, 0x19, 0x8a, 0x8a, 0x5d, 0xfd, 0xfe, 0x1b,
	0x09, 0xd7, 0x2e, 0x6e, 0xf4, 0x32, 0xeb, 0xb3, 0x99, 0x0d, 0xd9, 0xcc, 0x7c, 0x0c, 0x6f, 0x5b,
	0x14, 0x5a, 0x59, 0xf6, 0xe7, 0xb7, 0xcb, 0xd3, 0xec, 0xdd, 0x79, 0x36, 0xc6, 0xfb, 0x69, 0x4e,
	0x8b, 0xde, 0xc8, 0x39, 0x6a, 0x37, 0x7f, 0x8f, 0xa3, 0xdf, 0x6b, 0x70, 0xfc, 0xbb, 0xc7, 0xf1,
	0xe9, 0xe2, 0x45, 0x6f, 0xf4, 0x61, 0xf6, 0x7d, 0xfc, 0x85, 0xfe, 0x05, 0x00, 0x00, 0xff, 0xff,
	0x05, 0x20, 0x26, 0x13, 0x5f, 0x03, 0x00, 0x00,
}
