// Code generated by protoc-gen-go. DO NOT EDIT.
// source: google/cloud/recommendationengine/v1beta1/common.proto

package recommendationengine

import (
	fmt "fmt"
	math "math"

	proto "github.com/golang/protobuf/proto"
	_ "google.golang.org/genproto/googleapis/api/annotations"
)

// 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.ProtoPackageIsVersion3 // please upgrade the proto package

// FeatureMap represents extra features that customers want to include in the
// recommendation model for catalogs/user events as categorical/numerical
// features.
type FeatureMap struct {
	// Categorical features that can take on one of a limited number of possible
	// values. Some examples would be the brand/maker of a product, or country of
	// a customer.
	//
	// Feature names and values must be UTF-8 encoded strings.
	//
	// For example: `{ "colors": {"value": ["yellow", "green"]},
	//                 "sizes": {"value":["S", "M"]}`
	CategoricalFeatures map[string]*FeatureMap_StringList `protobuf:"bytes,1,rep,name=categorical_features,json=categoricalFeatures,proto3" json:"categorical_features,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	// Numerical features. Some examples would be the height/weight of a product,
	// or age of a customer.
	//
	// Feature names must be UTF-8 encoded strings.
	//
	// For example: `{ "lengths_cm": {"value":[2.3, 15.4]},
	//                 "heights_cm": {"value":[8.1, 6.4]} }`
	NumericalFeatures    map[string]*FeatureMap_FloatList `protobuf:"bytes,2,rep,name=numerical_features,json=numericalFeatures,proto3" json:"numerical_features,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	XXX_NoUnkeyedLiteral struct{}                         `json:"-"`
	XXX_unrecognized     []byte                           `json:"-"`
	XXX_sizecache        int32                            `json:"-"`
}

func (m *FeatureMap) Reset()         { *m = FeatureMap{} }
func (m *FeatureMap) String() string { return proto.CompactTextString(m) }
func (*FeatureMap) ProtoMessage()    {}
func (*FeatureMap) Descriptor() ([]byte, []int) {
	return fileDescriptor_9a5832e177c44eb7, []int{0}
}

func (m *FeatureMap) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FeatureMap.Unmarshal(m, b)
}
func (m *FeatureMap) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FeatureMap.Marshal(b, m, deterministic)
}
func (m *FeatureMap) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FeatureMap.Merge(m, src)
}
func (m *FeatureMap) XXX_Size() int {
	return xxx_messageInfo_FeatureMap.Size(m)
}
func (m *FeatureMap) XXX_DiscardUnknown() {
	xxx_messageInfo_FeatureMap.DiscardUnknown(m)
}

var xxx_messageInfo_FeatureMap proto.InternalMessageInfo

func (m *FeatureMap) GetCategoricalFeatures() map[string]*FeatureMap_StringList {
	if m != nil {
		return m.CategoricalFeatures
	}
	return nil
}

func (m *FeatureMap) GetNumericalFeatures() map[string]*FeatureMap_FloatList {
	if m != nil {
		return m.NumericalFeatures
	}
	return nil
}

// A list of string features.
type FeatureMap_StringList struct {
	// String feature value with a length limit of 128 bytes.
	Value                []string `protobuf:"bytes,1,rep,name=value,proto3" json:"value,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *FeatureMap_StringList) Reset()         { *m = FeatureMap_StringList{} }
func (m *FeatureMap_StringList) String() string { return proto.CompactTextString(m) }
func (*FeatureMap_StringList) ProtoMessage()    {}
func (*FeatureMap_StringList) Descriptor() ([]byte, []int) {
	return fileDescriptor_9a5832e177c44eb7, []int{0, 0}
}

func (m *FeatureMap_StringList) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FeatureMap_StringList.Unmarshal(m, b)
}
func (m *FeatureMap_StringList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FeatureMap_StringList.Marshal(b, m, deterministic)
}
func (m *FeatureMap_StringList) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FeatureMap_StringList.Merge(m, src)
}
func (m *FeatureMap_StringList) XXX_Size() int {
	return xxx_messageInfo_FeatureMap_StringList.Size(m)
}
func (m *FeatureMap_StringList) XXX_DiscardUnknown() {
	xxx_messageInfo_FeatureMap_StringList.DiscardUnknown(m)
}

var xxx_messageInfo_FeatureMap_StringList proto.InternalMessageInfo

func (m *FeatureMap_StringList) GetValue() []string {
	if m != nil {
		return m.Value
	}
	return nil
}

// A list of float features.
type FeatureMap_FloatList struct {
	// Float feature value.
	Value                []float32 `protobuf:"fixed32,1,rep,packed,name=value,proto3" json:"value,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (m *FeatureMap_FloatList) Reset()         { *m = FeatureMap_FloatList{} }
func (m *FeatureMap_FloatList) String() string { return proto.CompactTextString(m) }
func (*FeatureMap_FloatList) ProtoMessage()    {}
func (*FeatureMap_FloatList) Descriptor() ([]byte, []int) {
	return fileDescriptor_9a5832e177c44eb7, []int{0, 1}
}

func (m *FeatureMap_FloatList) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FeatureMap_FloatList.Unmarshal(m, b)
}
func (m *FeatureMap_FloatList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FeatureMap_FloatList.Marshal(b, m, deterministic)
}
func (m *FeatureMap_FloatList) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FeatureMap_FloatList.Merge(m, src)
}
func (m *FeatureMap_FloatList) XXX_Size() int {
	return xxx_messageInfo_FeatureMap_FloatList.Size(m)
}
func (m *FeatureMap_FloatList) XXX_DiscardUnknown() {
	xxx_messageInfo_FeatureMap_FloatList.DiscardUnknown(m)
}

var xxx_messageInfo_FeatureMap_FloatList proto.InternalMessageInfo

func (m *FeatureMap_FloatList) GetValue() []float32 {
	if m != nil {
		return m.Value
	}
	return nil
}

func init() {
	proto.RegisterType((*FeatureMap)(nil), "google.cloud.recommendationengine.v1beta1.FeatureMap")
	proto.RegisterMapType((map[string]*FeatureMap_StringList)(nil), "google.cloud.recommendationengine.v1beta1.FeatureMap.CategoricalFeaturesEntry")
	proto.RegisterMapType((map[string]*FeatureMap_FloatList)(nil), "google.cloud.recommendationengine.v1beta1.FeatureMap.NumericalFeaturesEntry")
	proto.RegisterType((*FeatureMap_StringList)(nil), "google.cloud.recommendationengine.v1beta1.FeatureMap.StringList")
	proto.RegisterType((*FeatureMap_FloatList)(nil), "google.cloud.recommendationengine.v1beta1.FeatureMap.FloatList")
}

func init() {
	proto.RegisterFile("google/cloud/recommendationengine/v1beta1/common.proto", fileDescriptor_9a5832e177c44eb7)
}

var fileDescriptor_9a5832e177c44eb7 = []byte{
	// 419 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x93, 0xc1, 0x6a, 0xe2, 0x40,
	0x18, 0xc7, 0x99, 0x71, 0x5d, 0x70, 0xbc, 0xec, 0x66, 0x65, 0x91, 0xb0, 0x07, 0xd7, 0x93, 0xc2,
	0xee, 0x04, 0x5d, 0x58, 0x96, 0xec, 0x61, 0xb7, 0x8a, 0x96, 0x82, 0x95, 0x92, 0x52, 0x0f, 0xc5,
	0x52, 0xc6, 0x38, 0x1d, 0x42, 0x93, 0x99, 0x90, 0x4c, 0x04, 0xe9, 0xa9, 0x87, 0x42, 0xdf, 0xa2,
	0xd0, 0x63, 0x1f, 0xa5, 0x2f, 0x52, 0xe8, 0x53, 0x14, 0x67, 0x92, 0x5a, 0x35, 0x05, 0xf1, 0x96,
	0xcc, 0xf7, 0xfb, 0xfe, 0xdf, 0xef, 0x0b, 0x19, 0xf4, 0x9b, 0x09, 0xc1, 0x7c, 0x6a, 0xb9, 0xbe,
	0x48, 0xa6, 0x56, 0x44, 0x5d, 0x11, 0x04, 0x94, 0x4f, 0x89, 0xf4, 0x04, 0xa7, 0x9c, 0x79, 0x9c,
	0x5a, 0xb3, 0xd6, 0x84, 0x4a, 0xd2, 0xb2, 0x16, 0x25, 0xc1, 0x71, 0x18, 0x09, 0x29, 0x8c, 0xa6,
	0xee, 0xc3, 0xaa, 0x0f, 0xe7, 0xf5, 0xe1, 0xb4, 0xcf, 0xfc, 0x96, 0x8e, 0x20, 0xa1, 0x67, 0x11,
	0xce, 0x85, 0x54, 0x50, 0xac, 0x83, 0xea, 0x4f, 0x1f, 0x10, 0xea, 0x53, 0x22, 0x93, 0x88, 0x1e,
	0x92, 0xd0, 0xb8, 0x06, 0xa8, 0xe2, 0x12, 0x49, 0x99, 0x88, 0x3c, 0x97, 0xf8, 0xe7, 0x17, 0xba,
	0x14, 0x57, 0x41, 0xad, 0xd0, 0x28, 0xb7, 0x87, 0x78, 0xeb, 0xb9, 0x78, 0x99, 0x8a, 0xbb, 0xcb,
	0xc4, 0xf4, 0x34, 0xee, 0x71, 0x19, 0xcd, 0x9d, 0x2f, 0xee, 0x66, 0xc5, 0xb8, 0x42, 0x06, 0x4f,
	0x02, 0xba, 0x26, 0x00, 0x95, 0xc0, 0x60, 0x37, 0x81, 0x61, 0x96, 0xb7, 0x3a, 0xfe, 0x33, 0x5f,
	0x3f, 0x37, 0xeb, 0x08, 0x1d, 0xcb, 0xc8, 0xe3, 0x6c, 0xe0, 0xc5, 0xd2, 0xa8, 0xa0, 0xe2, 0x8c,
	0xf8, 0x09, 0x55, 0xeb, 0x97, 0x1c, 0xfd, 0x62, 0x7e, 0x47, 0xa5, 0xbe, 0x2f, 0x88, 0xdc, 0x44,
	0x60, 0x86, 0xdc, 0x02, 0x54, 0x7d, 0x6f, 0x6b, 0xe3, 0x13, 0x2a, 0x5c, 0xd2, 0x79, 0x15, 0xd4,
	0x40, 0xa3, 0xe4, 0x2c, 0x1e, 0x8d, 0x51, 0x16, 0x02, 0x6b, 0xa0, 0x51, 0x6e, 0xff, 0xdf, 0x6d,
	0xcb, 0xa5, 0x78, 0xaa, 0x61, 0xc3, 0x3f, 0xc0, 0xbc, 0x01, 0xe8, 0x6b, 0xfe, 0xfe, 0x39, 0x22,
	0x27, 0xab, 0x22, 0xff, 0x76, 0x13, 0x79, 0xfd, 0x3a, 0x6f, 0x3c, 0x3a, 0x77, 0x10, 0xfd, 0x74,
	0x45, 0xb0, 0x7d, 0xe2, 0x11, 0x38, 0x3d, 0x4b, 0x61, 0x26, 0x7c, 0xc2, 0x19, 0x16, 0x11, 0xb3,
	0x18, 0xe5, 0xea, 0xcf, 0xb5, 0x74, 0x89, 0x84, 0x5e, 0xbc, 0xc5, 0xed, 0xf9, 0x9b, 0x57, 0xbc,
	0x87, 0x45, 0xa7, 0xd7, 0xdd, 0x3b, 0x78, 0x80, 0xcd, 0x7d, 0x3d, 0xa7, 0xab, 0xa4, 0x9c, 0x15,
	0xb6, 0xa7, 0xa5, 0x46, 0xad, 0xce, 0x22, 0xe8, 0x31, 0x63, 0xc7, 0x8a, 0x1d, 0xe7, 0xb1, 0xe3,
	0x91, 0x1e, 0xfa, 0x0c, 0x7f, 0x68, 0xd6, 0xb6, 0x15, 0x6c, 0xdb, 0x79, 0xb4, 0x6d, 0xa7, 0xf8,
	0xe4, 0xa3, 0x5a, 0xec, 0xd7, 0x4b, 0x00, 0x00, 0x00, 0xff, 0xff, 0xa5, 0xd8, 0x55, 0x26, 0x15,
	0x04, 0x00, 0x00,
}
