1// Code generated by protoc-gen-go. DO NOT EDIT.
2// source: google/datastore/v1/query.proto
3
4package datastore // import "google.golang.org/genproto/googleapis/datastore/v1"
5
6import proto "github.com/golang/protobuf/proto"
7import fmt "fmt"
8import math "math"
9import wrappers "github.com/golang/protobuf/ptypes/wrappers"
10import _ "google.golang.org/genproto/googleapis/api/annotations"
11import _ "google.golang.org/genproto/googleapis/type/latlng"
12
13// Reference imports to suppress errors if they are not otherwise used.
14var _ = proto.Marshal
15var _ = fmt.Errorf
16var _ = math.Inf
17
18// This is a compile-time assertion to ensure that this generated file
19// is compatible with the proto package it is being compiled against.
20// A compilation error at this line likely means your copy of the
21// proto package needs to be updated.
22const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
23
24// Specifies what data the 'entity' field contains.
25// A `ResultType` is either implied (for example, in `LookupResponse.missing`
26// from `datastore.proto`, it is always `KEY_ONLY`) or specified by context
27// (for example, in message `QueryResultBatch`, field `entity_result_type`
28// specifies a `ResultType` for all the values in field `entity_results`).
29type EntityResult_ResultType int32
30
31const (
32	// Unspecified. This value is never used.
33	EntityResult_RESULT_TYPE_UNSPECIFIED EntityResult_ResultType = 0
34	// The key and properties.
35	EntityResult_FULL EntityResult_ResultType = 1
36	// A projected subset of properties. The entity may have no key.
37	EntityResult_PROJECTION EntityResult_ResultType = 2
38	// Only the key.
39	EntityResult_KEY_ONLY EntityResult_ResultType = 3
40)
41
42var EntityResult_ResultType_name = map[int32]string{
43	0: "RESULT_TYPE_UNSPECIFIED",
44	1: "FULL",
45	2: "PROJECTION",
46	3: "KEY_ONLY",
47}
48var EntityResult_ResultType_value = map[string]int32{
49	"RESULT_TYPE_UNSPECIFIED": 0,
50	"FULL":       1,
51	"PROJECTION": 2,
52	"KEY_ONLY":   3,
53}
54
55func (x EntityResult_ResultType) String() string {
56	return proto.EnumName(EntityResult_ResultType_name, int32(x))
57}
58func (EntityResult_ResultType) EnumDescriptor() ([]byte, []int) {
59	return fileDescriptor_query_1ba6ff8bae21b87f, []int{0, 0}
60}
61
62// The sort direction.
63type PropertyOrder_Direction int32
64
65const (
66	// Unspecified. This value must not be used.
67	PropertyOrder_DIRECTION_UNSPECIFIED PropertyOrder_Direction = 0
68	// Ascending.
69	PropertyOrder_ASCENDING PropertyOrder_Direction = 1
70	// Descending.
71	PropertyOrder_DESCENDING PropertyOrder_Direction = 2
72)
73
74var PropertyOrder_Direction_name = map[int32]string{
75	0: "DIRECTION_UNSPECIFIED",
76	1: "ASCENDING",
77	2: "DESCENDING",
78}
79var PropertyOrder_Direction_value = map[string]int32{
80	"DIRECTION_UNSPECIFIED": 0,
81	"ASCENDING":             1,
82	"DESCENDING":            2,
83}
84
85func (x PropertyOrder_Direction) String() string {
86	return proto.EnumName(PropertyOrder_Direction_name, int32(x))
87}
88func (PropertyOrder_Direction) EnumDescriptor() ([]byte, []int) {
89	return fileDescriptor_query_1ba6ff8bae21b87f, []int{5, 0}
90}
91
92// A composite filter operator.
93type CompositeFilter_Operator int32
94
95const (
96	// Unspecified. This value must not be used.
97	CompositeFilter_OPERATOR_UNSPECIFIED CompositeFilter_Operator = 0
98	// The results are required to satisfy each of the combined filters.
99	CompositeFilter_AND CompositeFilter_Operator = 1
100)
101
102var CompositeFilter_Operator_name = map[int32]string{
103	0: "OPERATOR_UNSPECIFIED",
104	1: "AND",
105}
106var CompositeFilter_Operator_value = map[string]int32{
107	"OPERATOR_UNSPECIFIED": 0,
108	"AND": 1,
109}
110
111func (x CompositeFilter_Operator) String() string {
112	return proto.EnumName(CompositeFilter_Operator_name, int32(x))
113}
114func (CompositeFilter_Operator) EnumDescriptor() ([]byte, []int) {
115	return fileDescriptor_query_1ba6ff8bae21b87f, []int{7, 0}
116}
117
118// A property filter operator.
119type PropertyFilter_Operator int32
120
121const (
122	// Unspecified. This value must not be used.
123	PropertyFilter_OPERATOR_UNSPECIFIED PropertyFilter_Operator = 0
124	// Less than.
125	PropertyFilter_LESS_THAN PropertyFilter_Operator = 1
126	// Less than or equal.
127	PropertyFilter_LESS_THAN_OR_EQUAL PropertyFilter_Operator = 2
128	// Greater than.
129	PropertyFilter_GREATER_THAN PropertyFilter_Operator = 3
130	// Greater than or equal.
131	PropertyFilter_GREATER_THAN_OR_EQUAL PropertyFilter_Operator = 4
132	// Equal.
133	PropertyFilter_EQUAL PropertyFilter_Operator = 5
134	// Has ancestor.
135	PropertyFilter_HAS_ANCESTOR PropertyFilter_Operator = 11
136)
137
138var PropertyFilter_Operator_name = map[int32]string{
139	0:  "OPERATOR_UNSPECIFIED",
140	1:  "LESS_THAN",
141	2:  "LESS_THAN_OR_EQUAL",
142	3:  "GREATER_THAN",
143	4:  "GREATER_THAN_OR_EQUAL",
144	5:  "EQUAL",
145	11: "HAS_ANCESTOR",
146}
147var PropertyFilter_Operator_value = map[string]int32{
148	"OPERATOR_UNSPECIFIED":  0,
149	"LESS_THAN":             1,
150	"LESS_THAN_OR_EQUAL":    2,
151	"GREATER_THAN":          3,
152	"GREATER_THAN_OR_EQUAL": 4,
153	"EQUAL":                 5,
154	"HAS_ANCESTOR":          11,
155}
156
157func (x PropertyFilter_Operator) String() string {
158	return proto.EnumName(PropertyFilter_Operator_name, int32(x))
159}
160func (PropertyFilter_Operator) EnumDescriptor() ([]byte, []int) {
161	return fileDescriptor_query_1ba6ff8bae21b87f, []int{8, 0}
162}
163
164// The possible values for the `more_results` field.
165type QueryResultBatch_MoreResultsType int32
166
167const (
168	// Unspecified. This value is never used.
169	QueryResultBatch_MORE_RESULTS_TYPE_UNSPECIFIED QueryResultBatch_MoreResultsType = 0
170	// There may be additional batches to fetch from this query.
171	QueryResultBatch_NOT_FINISHED QueryResultBatch_MoreResultsType = 1
172	// The query is finished, but there may be more results after the limit.
173	QueryResultBatch_MORE_RESULTS_AFTER_LIMIT QueryResultBatch_MoreResultsType = 2
174	// The query is finished, but there may be more results after the end
175	// cursor.
176	QueryResultBatch_MORE_RESULTS_AFTER_CURSOR QueryResultBatch_MoreResultsType = 4
177	// The query is finished, and there are no more results.
178	QueryResultBatch_NO_MORE_RESULTS QueryResultBatch_MoreResultsType = 3
179)
180
181var QueryResultBatch_MoreResultsType_name = map[int32]string{
182	0: "MORE_RESULTS_TYPE_UNSPECIFIED",
183	1: "NOT_FINISHED",
184	2: "MORE_RESULTS_AFTER_LIMIT",
185	4: "MORE_RESULTS_AFTER_CURSOR",
186	3: "NO_MORE_RESULTS",
187}
188var QueryResultBatch_MoreResultsType_value = map[string]int32{
189	"MORE_RESULTS_TYPE_UNSPECIFIED": 0,
190	"NOT_FINISHED":                  1,
191	"MORE_RESULTS_AFTER_LIMIT":      2,
192	"MORE_RESULTS_AFTER_CURSOR":     4,
193	"NO_MORE_RESULTS":               3,
194}
195
196func (x QueryResultBatch_MoreResultsType) String() string {
197	return proto.EnumName(QueryResultBatch_MoreResultsType_name, int32(x))
198}
199func (QueryResultBatch_MoreResultsType) EnumDescriptor() ([]byte, []int) {
200	return fileDescriptor_query_1ba6ff8bae21b87f, []int{11, 0}
201}
202
203// The result of fetching an entity from Datastore.
204type EntityResult struct {
205	// The resulting entity.
206	Entity *Entity `protobuf:"bytes,1,opt,name=entity,proto3" json:"entity,omitempty"`
207	// The version of the entity, a strictly positive number that monotonically
208	// increases with changes to the entity.
209	//
210	// This field is set for [`FULL`][google.datastore.v1.EntityResult.ResultType.FULL] entity
211	// results.
212	//
213	// For [missing][google.datastore.v1.LookupResponse.missing] entities in `LookupResponse`, this
214	// is the version of the snapshot that was used to look up the entity, and it
215	// is always set except for eventually consistent reads.
216	Version int64 `protobuf:"varint,4,opt,name=version,proto3" json:"version,omitempty"`
217	// A cursor that points to the position after the result entity.
218	// Set only when the `EntityResult` is part of a `QueryResultBatch` message.
219	Cursor               []byte   `protobuf:"bytes,3,opt,name=cursor,proto3" json:"cursor,omitempty"`
220	XXX_NoUnkeyedLiteral struct{} `json:"-"`
221	XXX_unrecognized     []byte   `json:"-"`
222	XXX_sizecache        int32    `json:"-"`
223}
224
225func (m *EntityResult) Reset()         { *m = EntityResult{} }
226func (m *EntityResult) String() string { return proto.CompactTextString(m) }
227func (*EntityResult) ProtoMessage()    {}
228func (*EntityResult) Descriptor() ([]byte, []int) {
229	return fileDescriptor_query_1ba6ff8bae21b87f, []int{0}
230}
231func (m *EntityResult) XXX_Unmarshal(b []byte) error {
232	return xxx_messageInfo_EntityResult.Unmarshal(m, b)
233}
234func (m *EntityResult) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
235	return xxx_messageInfo_EntityResult.Marshal(b, m, deterministic)
236}
237func (dst *EntityResult) XXX_Merge(src proto.Message) {
238	xxx_messageInfo_EntityResult.Merge(dst, src)
239}
240func (m *EntityResult) XXX_Size() int {
241	return xxx_messageInfo_EntityResult.Size(m)
242}
243func (m *EntityResult) XXX_DiscardUnknown() {
244	xxx_messageInfo_EntityResult.DiscardUnknown(m)
245}
246
247var xxx_messageInfo_EntityResult proto.InternalMessageInfo
248
249func (m *EntityResult) GetEntity() *Entity {
250	if m != nil {
251		return m.Entity
252	}
253	return nil
254}
255
256func (m *EntityResult) GetVersion() int64 {
257	if m != nil {
258		return m.Version
259	}
260	return 0
261}
262
263func (m *EntityResult) GetCursor() []byte {
264	if m != nil {
265		return m.Cursor
266	}
267	return nil
268}
269
270// A query for entities.
271type Query struct {
272	// The projection to return. Defaults to returning all properties.
273	Projection []*Projection `protobuf:"bytes,2,rep,name=projection,proto3" json:"projection,omitempty"`
274	// The kinds to query (if empty, returns entities of all kinds).
275	// Currently at most 1 kind may be specified.
276	Kind []*KindExpression `protobuf:"bytes,3,rep,name=kind,proto3" json:"kind,omitempty"`
277	// The filter to apply.
278	Filter *Filter `protobuf:"bytes,4,opt,name=filter,proto3" json:"filter,omitempty"`
279	// The order to apply to the query results (if empty, order is unspecified).
280	Order []*PropertyOrder `protobuf:"bytes,5,rep,name=order,proto3" json:"order,omitempty"`
281	// The properties to make distinct. The query results will contain the first
282	// result for each distinct combination of values for the given properties
283	// (if empty, all results are returned).
284	DistinctOn []*PropertyReference `protobuf:"bytes,6,rep,name=distinct_on,json=distinctOn,proto3" json:"distinct_on,omitempty"`
285	// A starting point for the query results. Query cursors are
286	// returned in query result batches and
287	// [can only be used to continue the same query](https://cloud.google.com/datastore/docs/concepts/queries#cursors_limits_and_offsets).
288	StartCursor []byte `protobuf:"bytes,7,opt,name=start_cursor,json=startCursor,proto3" json:"start_cursor,omitempty"`
289	// An ending point for the query results. Query cursors are
290	// returned in query result batches and
291	// [can only be used to limit the same query](https://cloud.google.com/datastore/docs/concepts/queries#cursors_limits_and_offsets).
292	EndCursor []byte `protobuf:"bytes,8,opt,name=end_cursor,json=endCursor,proto3" json:"end_cursor,omitempty"`
293	// The number of results to skip. Applies before limit, but after all other
294	// constraints. Optional. Must be >= 0 if specified.
295	Offset int32 `protobuf:"varint,10,opt,name=offset,proto3" json:"offset,omitempty"`
296	// The maximum number of results to return. Applies after all other
297	// constraints. Optional.
298	// Unspecified is interpreted as no limit.
299	// Must be >= 0 if specified.
300	Limit                *wrappers.Int32Value `protobuf:"bytes,12,opt,name=limit,proto3" json:"limit,omitempty"`
301	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
302	XXX_unrecognized     []byte               `json:"-"`
303	XXX_sizecache        int32                `json:"-"`
304}
305
306func (m *Query) Reset()         { *m = Query{} }
307func (m *Query) String() string { return proto.CompactTextString(m) }
308func (*Query) ProtoMessage()    {}
309func (*Query) Descriptor() ([]byte, []int) {
310	return fileDescriptor_query_1ba6ff8bae21b87f, []int{1}
311}
312func (m *Query) XXX_Unmarshal(b []byte) error {
313	return xxx_messageInfo_Query.Unmarshal(m, b)
314}
315func (m *Query) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
316	return xxx_messageInfo_Query.Marshal(b, m, deterministic)
317}
318func (dst *Query) XXX_Merge(src proto.Message) {
319	xxx_messageInfo_Query.Merge(dst, src)
320}
321func (m *Query) XXX_Size() int {
322	return xxx_messageInfo_Query.Size(m)
323}
324func (m *Query) XXX_DiscardUnknown() {
325	xxx_messageInfo_Query.DiscardUnknown(m)
326}
327
328var xxx_messageInfo_Query proto.InternalMessageInfo
329
330func (m *Query) GetProjection() []*Projection {
331	if m != nil {
332		return m.Projection
333	}
334	return nil
335}
336
337func (m *Query) GetKind() []*KindExpression {
338	if m != nil {
339		return m.Kind
340	}
341	return nil
342}
343
344func (m *Query) GetFilter() *Filter {
345	if m != nil {
346		return m.Filter
347	}
348	return nil
349}
350
351func (m *Query) GetOrder() []*PropertyOrder {
352	if m != nil {
353		return m.Order
354	}
355	return nil
356}
357
358func (m *Query) GetDistinctOn() []*PropertyReference {
359	if m != nil {
360		return m.DistinctOn
361	}
362	return nil
363}
364
365func (m *Query) GetStartCursor() []byte {
366	if m != nil {
367		return m.StartCursor
368	}
369	return nil
370}
371
372func (m *Query) GetEndCursor() []byte {
373	if m != nil {
374		return m.EndCursor
375	}
376	return nil
377}
378
379func (m *Query) GetOffset() int32 {
380	if m != nil {
381		return m.Offset
382	}
383	return 0
384}
385
386func (m *Query) GetLimit() *wrappers.Int32Value {
387	if m != nil {
388		return m.Limit
389	}
390	return nil
391}
392
393// A representation of a kind.
394type KindExpression struct {
395	// The name of the kind.
396	Name                 string   `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
397	XXX_NoUnkeyedLiteral struct{} `json:"-"`
398	XXX_unrecognized     []byte   `json:"-"`
399	XXX_sizecache        int32    `json:"-"`
400}
401
402func (m *KindExpression) Reset()         { *m = KindExpression{} }
403func (m *KindExpression) String() string { return proto.CompactTextString(m) }
404func (*KindExpression) ProtoMessage()    {}
405func (*KindExpression) Descriptor() ([]byte, []int) {
406	return fileDescriptor_query_1ba6ff8bae21b87f, []int{2}
407}
408func (m *KindExpression) XXX_Unmarshal(b []byte) error {
409	return xxx_messageInfo_KindExpression.Unmarshal(m, b)
410}
411func (m *KindExpression) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
412	return xxx_messageInfo_KindExpression.Marshal(b, m, deterministic)
413}
414func (dst *KindExpression) XXX_Merge(src proto.Message) {
415	xxx_messageInfo_KindExpression.Merge(dst, src)
416}
417func (m *KindExpression) XXX_Size() int {
418	return xxx_messageInfo_KindExpression.Size(m)
419}
420func (m *KindExpression) XXX_DiscardUnknown() {
421	xxx_messageInfo_KindExpression.DiscardUnknown(m)
422}
423
424var xxx_messageInfo_KindExpression proto.InternalMessageInfo
425
426func (m *KindExpression) GetName() string {
427	if m != nil {
428		return m.Name
429	}
430	return ""
431}
432
433// A reference to a property relative to the kind expressions.
434type PropertyReference struct {
435	// The name of the property.
436	// If name includes "."s, it may be interpreted as a property name path.
437	Name                 string   `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
438	XXX_NoUnkeyedLiteral struct{} `json:"-"`
439	XXX_unrecognized     []byte   `json:"-"`
440	XXX_sizecache        int32    `json:"-"`
441}
442
443func (m *PropertyReference) Reset()         { *m = PropertyReference{} }
444func (m *PropertyReference) String() string { return proto.CompactTextString(m) }
445func (*PropertyReference) ProtoMessage()    {}
446func (*PropertyReference) Descriptor() ([]byte, []int) {
447	return fileDescriptor_query_1ba6ff8bae21b87f, []int{3}
448}
449func (m *PropertyReference) XXX_Unmarshal(b []byte) error {
450	return xxx_messageInfo_PropertyReference.Unmarshal(m, b)
451}
452func (m *PropertyReference) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
453	return xxx_messageInfo_PropertyReference.Marshal(b, m, deterministic)
454}
455func (dst *PropertyReference) XXX_Merge(src proto.Message) {
456	xxx_messageInfo_PropertyReference.Merge(dst, src)
457}
458func (m *PropertyReference) XXX_Size() int {
459	return xxx_messageInfo_PropertyReference.Size(m)
460}
461func (m *PropertyReference) XXX_DiscardUnknown() {
462	xxx_messageInfo_PropertyReference.DiscardUnknown(m)
463}
464
465var xxx_messageInfo_PropertyReference proto.InternalMessageInfo
466
467func (m *PropertyReference) GetName() string {
468	if m != nil {
469		return m.Name
470	}
471	return ""
472}
473
474// A representation of a property in a projection.
475type Projection struct {
476	// The property to project.
477	Property             *PropertyReference `protobuf:"bytes,1,opt,name=property,proto3" json:"property,omitempty"`
478	XXX_NoUnkeyedLiteral struct{}           `json:"-"`
479	XXX_unrecognized     []byte             `json:"-"`
480	XXX_sizecache        int32              `json:"-"`
481}
482
483func (m *Projection) Reset()         { *m = Projection{} }
484func (m *Projection) String() string { return proto.CompactTextString(m) }
485func (*Projection) ProtoMessage()    {}
486func (*Projection) Descriptor() ([]byte, []int) {
487	return fileDescriptor_query_1ba6ff8bae21b87f, []int{4}
488}
489func (m *Projection) XXX_Unmarshal(b []byte) error {
490	return xxx_messageInfo_Projection.Unmarshal(m, b)
491}
492func (m *Projection) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
493	return xxx_messageInfo_Projection.Marshal(b, m, deterministic)
494}
495func (dst *Projection) XXX_Merge(src proto.Message) {
496	xxx_messageInfo_Projection.Merge(dst, src)
497}
498func (m *Projection) XXX_Size() int {
499	return xxx_messageInfo_Projection.Size(m)
500}
501func (m *Projection) XXX_DiscardUnknown() {
502	xxx_messageInfo_Projection.DiscardUnknown(m)
503}
504
505var xxx_messageInfo_Projection proto.InternalMessageInfo
506
507func (m *Projection) GetProperty() *PropertyReference {
508	if m != nil {
509		return m.Property
510	}
511	return nil
512}
513
514// The desired order for a specific property.
515type PropertyOrder struct {
516	// The property to order by.
517	Property *PropertyReference `protobuf:"bytes,1,opt,name=property,proto3" json:"property,omitempty"`
518	// The direction to order by. Defaults to `ASCENDING`.
519	Direction            PropertyOrder_Direction `protobuf:"varint,2,opt,name=direction,proto3,enum=google.datastore.v1.PropertyOrder_Direction" json:"direction,omitempty"`
520	XXX_NoUnkeyedLiteral struct{}                `json:"-"`
521	XXX_unrecognized     []byte                  `json:"-"`
522	XXX_sizecache        int32                   `json:"-"`
523}
524
525func (m *PropertyOrder) Reset()         { *m = PropertyOrder{} }
526func (m *PropertyOrder) String() string { return proto.CompactTextString(m) }
527func (*PropertyOrder) ProtoMessage()    {}
528func (*PropertyOrder) Descriptor() ([]byte, []int) {
529	return fileDescriptor_query_1ba6ff8bae21b87f, []int{5}
530}
531func (m *PropertyOrder) XXX_Unmarshal(b []byte) error {
532	return xxx_messageInfo_PropertyOrder.Unmarshal(m, b)
533}
534func (m *PropertyOrder) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
535	return xxx_messageInfo_PropertyOrder.Marshal(b, m, deterministic)
536}
537func (dst *PropertyOrder) XXX_Merge(src proto.Message) {
538	xxx_messageInfo_PropertyOrder.Merge(dst, src)
539}
540func (m *PropertyOrder) XXX_Size() int {
541	return xxx_messageInfo_PropertyOrder.Size(m)
542}
543func (m *PropertyOrder) XXX_DiscardUnknown() {
544	xxx_messageInfo_PropertyOrder.DiscardUnknown(m)
545}
546
547var xxx_messageInfo_PropertyOrder proto.InternalMessageInfo
548
549func (m *PropertyOrder) GetProperty() *PropertyReference {
550	if m != nil {
551		return m.Property
552	}
553	return nil
554}
555
556func (m *PropertyOrder) GetDirection() PropertyOrder_Direction {
557	if m != nil {
558		return m.Direction
559	}
560	return PropertyOrder_DIRECTION_UNSPECIFIED
561}
562
563// A holder for any type of filter.
564type Filter struct {
565	// The type of filter.
566	//
567	// Types that are valid to be assigned to FilterType:
568	//	*Filter_CompositeFilter
569	//	*Filter_PropertyFilter
570	FilterType           isFilter_FilterType `protobuf_oneof:"filter_type"`
571	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
572	XXX_unrecognized     []byte              `json:"-"`
573	XXX_sizecache        int32               `json:"-"`
574}
575
576func (m *Filter) Reset()         { *m = Filter{} }
577func (m *Filter) String() string { return proto.CompactTextString(m) }
578func (*Filter) ProtoMessage()    {}
579func (*Filter) Descriptor() ([]byte, []int) {
580	return fileDescriptor_query_1ba6ff8bae21b87f, []int{6}
581}
582func (m *Filter) XXX_Unmarshal(b []byte) error {
583	return xxx_messageInfo_Filter.Unmarshal(m, b)
584}
585func (m *Filter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
586	return xxx_messageInfo_Filter.Marshal(b, m, deterministic)
587}
588func (dst *Filter) XXX_Merge(src proto.Message) {
589	xxx_messageInfo_Filter.Merge(dst, src)
590}
591func (m *Filter) XXX_Size() int {
592	return xxx_messageInfo_Filter.Size(m)
593}
594func (m *Filter) XXX_DiscardUnknown() {
595	xxx_messageInfo_Filter.DiscardUnknown(m)
596}
597
598var xxx_messageInfo_Filter proto.InternalMessageInfo
599
600type isFilter_FilterType interface {
601	isFilter_FilterType()
602}
603
604type Filter_CompositeFilter struct {
605	CompositeFilter *CompositeFilter `protobuf:"bytes,1,opt,name=composite_filter,json=compositeFilter,proto3,oneof"`
606}
607type Filter_PropertyFilter struct {
608	PropertyFilter *PropertyFilter `protobuf:"bytes,2,opt,name=property_filter,json=propertyFilter,proto3,oneof"`
609}
610
611func (*Filter_CompositeFilter) isFilter_FilterType() {}
612func (*Filter_PropertyFilter) isFilter_FilterType()  {}
613
614func (m *Filter) GetFilterType() isFilter_FilterType {
615	if m != nil {
616		return m.FilterType
617	}
618	return nil
619}
620
621func (m *Filter) GetCompositeFilter() *CompositeFilter {
622	if x, ok := m.GetFilterType().(*Filter_CompositeFilter); ok {
623		return x.CompositeFilter
624	}
625	return nil
626}
627
628func (m *Filter) GetPropertyFilter() *PropertyFilter {
629	if x, ok := m.GetFilterType().(*Filter_PropertyFilter); ok {
630		return x.PropertyFilter
631	}
632	return nil
633}
634
635// XXX_OneofFuncs is for the internal use of the proto package.
636func (*Filter) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
637	return _Filter_OneofMarshaler, _Filter_OneofUnmarshaler, _Filter_OneofSizer, []interface{}{
638		(*Filter_CompositeFilter)(nil),
639		(*Filter_PropertyFilter)(nil),
640	}
641}
642
643func _Filter_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
644	m := msg.(*Filter)
645	// filter_type
646	switch x := m.FilterType.(type) {
647	case *Filter_CompositeFilter:
648		b.EncodeVarint(1<<3 | proto.WireBytes)
649		if err := b.EncodeMessage(x.CompositeFilter); err != nil {
650			return err
651		}
652	case *Filter_PropertyFilter:
653		b.EncodeVarint(2<<3 | proto.WireBytes)
654		if err := b.EncodeMessage(x.PropertyFilter); err != nil {
655			return err
656		}
657	case nil:
658	default:
659		return fmt.Errorf("Filter.FilterType has unexpected type %T", x)
660	}
661	return nil
662}
663
664func _Filter_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
665	m := msg.(*Filter)
666	switch tag {
667	case 1: // filter_type.composite_filter
668		if wire != proto.WireBytes {
669			return true, proto.ErrInternalBadWireType
670		}
671		msg := new(CompositeFilter)
672		err := b.DecodeMessage(msg)
673		m.FilterType = &Filter_CompositeFilter{msg}
674		return true, err
675	case 2: // filter_type.property_filter
676		if wire != proto.WireBytes {
677			return true, proto.ErrInternalBadWireType
678		}
679		msg := new(PropertyFilter)
680		err := b.DecodeMessage(msg)
681		m.FilterType = &Filter_PropertyFilter{msg}
682		return true, err
683	default:
684		return false, nil
685	}
686}
687
688func _Filter_OneofSizer(msg proto.Message) (n int) {
689	m := msg.(*Filter)
690	// filter_type
691	switch x := m.FilterType.(type) {
692	case *Filter_CompositeFilter:
693		s := proto.Size(x.CompositeFilter)
694		n += 1 // tag and wire
695		n += proto.SizeVarint(uint64(s))
696		n += s
697	case *Filter_PropertyFilter:
698		s := proto.Size(x.PropertyFilter)
699		n += 1 // tag and wire
700		n += proto.SizeVarint(uint64(s))
701		n += s
702	case nil:
703	default:
704		panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
705	}
706	return n
707}
708
709// A filter that merges multiple other filters using the given operator.
710type CompositeFilter struct {
711	// The operator for combining multiple filters.
712	Op CompositeFilter_Operator `protobuf:"varint,1,opt,name=op,proto3,enum=google.datastore.v1.CompositeFilter_Operator" json:"op,omitempty"`
713	// The list of filters to combine.
714	// Must contain at least one filter.
715	Filters              []*Filter `protobuf:"bytes,2,rep,name=filters,proto3" json:"filters,omitempty"`
716	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
717	XXX_unrecognized     []byte    `json:"-"`
718	XXX_sizecache        int32     `json:"-"`
719}
720
721func (m *CompositeFilter) Reset()         { *m = CompositeFilter{} }
722func (m *CompositeFilter) String() string { return proto.CompactTextString(m) }
723func (*CompositeFilter) ProtoMessage()    {}
724func (*CompositeFilter) Descriptor() ([]byte, []int) {
725	return fileDescriptor_query_1ba6ff8bae21b87f, []int{7}
726}
727func (m *CompositeFilter) XXX_Unmarshal(b []byte) error {
728	return xxx_messageInfo_CompositeFilter.Unmarshal(m, b)
729}
730func (m *CompositeFilter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
731	return xxx_messageInfo_CompositeFilter.Marshal(b, m, deterministic)
732}
733func (dst *CompositeFilter) XXX_Merge(src proto.Message) {
734	xxx_messageInfo_CompositeFilter.Merge(dst, src)
735}
736func (m *CompositeFilter) XXX_Size() int {
737	return xxx_messageInfo_CompositeFilter.Size(m)
738}
739func (m *CompositeFilter) XXX_DiscardUnknown() {
740	xxx_messageInfo_CompositeFilter.DiscardUnknown(m)
741}
742
743var xxx_messageInfo_CompositeFilter proto.InternalMessageInfo
744
745func (m *CompositeFilter) GetOp() CompositeFilter_Operator {
746	if m != nil {
747		return m.Op
748	}
749	return CompositeFilter_OPERATOR_UNSPECIFIED
750}
751
752func (m *CompositeFilter) GetFilters() []*Filter {
753	if m != nil {
754		return m.Filters
755	}
756	return nil
757}
758
759// A filter on a specific property.
760type PropertyFilter struct {
761	// The property to filter by.
762	Property *PropertyReference `protobuf:"bytes,1,opt,name=property,proto3" json:"property,omitempty"`
763	// The operator to filter by.
764	Op PropertyFilter_Operator `protobuf:"varint,2,opt,name=op,proto3,enum=google.datastore.v1.PropertyFilter_Operator" json:"op,omitempty"`
765	// The value to compare the property to.
766	Value                *Value   `protobuf:"bytes,3,opt,name=value,proto3" json:"value,omitempty"`
767	XXX_NoUnkeyedLiteral struct{} `json:"-"`
768	XXX_unrecognized     []byte   `json:"-"`
769	XXX_sizecache        int32    `json:"-"`
770}
771
772func (m *PropertyFilter) Reset()         { *m = PropertyFilter{} }
773func (m *PropertyFilter) String() string { return proto.CompactTextString(m) }
774func (*PropertyFilter) ProtoMessage()    {}
775func (*PropertyFilter) Descriptor() ([]byte, []int) {
776	return fileDescriptor_query_1ba6ff8bae21b87f, []int{8}
777}
778func (m *PropertyFilter) XXX_Unmarshal(b []byte) error {
779	return xxx_messageInfo_PropertyFilter.Unmarshal(m, b)
780}
781func (m *PropertyFilter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
782	return xxx_messageInfo_PropertyFilter.Marshal(b, m, deterministic)
783}
784func (dst *PropertyFilter) XXX_Merge(src proto.Message) {
785	xxx_messageInfo_PropertyFilter.Merge(dst, src)
786}
787func (m *PropertyFilter) XXX_Size() int {
788	return xxx_messageInfo_PropertyFilter.Size(m)
789}
790func (m *PropertyFilter) XXX_DiscardUnknown() {
791	xxx_messageInfo_PropertyFilter.DiscardUnknown(m)
792}
793
794var xxx_messageInfo_PropertyFilter proto.InternalMessageInfo
795
796func (m *PropertyFilter) GetProperty() *PropertyReference {
797	if m != nil {
798		return m.Property
799	}
800	return nil
801}
802
803func (m *PropertyFilter) GetOp() PropertyFilter_Operator {
804	if m != nil {
805		return m.Op
806	}
807	return PropertyFilter_OPERATOR_UNSPECIFIED
808}
809
810func (m *PropertyFilter) GetValue() *Value {
811	if m != nil {
812		return m.Value
813	}
814	return nil
815}
816
817// A [GQL query](https://cloud.google.com/datastore/docs/apis/gql/gql_reference).
818type GqlQuery struct {
819	// A string of the format described
820	// [here](https://cloud.google.com/datastore/docs/apis/gql/gql_reference).
821	QueryString string `protobuf:"bytes,1,opt,name=query_string,json=queryString,proto3" json:"query_string,omitempty"`
822	// When false, the query string must not contain any literals and instead must
823	// bind all values. For example,
824	// `SELECT * FROM Kind WHERE a = 'string literal'` is not allowed, while
825	// `SELECT * FROM Kind WHERE a = @value` is.
826	AllowLiterals bool `protobuf:"varint,2,opt,name=allow_literals,json=allowLiterals,proto3" json:"allow_literals,omitempty"`
827	// For each non-reserved named binding site in the query string, there must be
828	// a named parameter with that name, but not necessarily the inverse.
829	//
830	// Key must match regex `[A-Za-z_$][A-Za-z_$0-9]*`, must not match regex
831	// `__.*__`, and must not be `""`.
832	NamedBindings map[string]*GqlQueryParameter `protobuf:"bytes,5,rep,name=named_bindings,json=namedBindings,proto3" json:"named_bindings,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
833	// Numbered binding site @1 references the first numbered parameter,
834	// effectively using 1-based indexing, rather than the usual 0.
835	//
836	// For each binding site numbered i in `query_string`, there must be an i-th
837	// numbered parameter. The inverse must also be true.
838	PositionalBindings   []*GqlQueryParameter `protobuf:"bytes,4,rep,name=positional_bindings,json=positionalBindings,proto3" json:"positional_bindings,omitempty"`
839	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
840	XXX_unrecognized     []byte               `json:"-"`
841	XXX_sizecache        int32                `json:"-"`
842}
843
844func (m *GqlQuery) Reset()         { *m = GqlQuery{} }
845func (m *GqlQuery) String() string { return proto.CompactTextString(m) }
846func (*GqlQuery) ProtoMessage()    {}
847func (*GqlQuery) Descriptor() ([]byte, []int) {
848	return fileDescriptor_query_1ba6ff8bae21b87f, []int{9}
849}
850func (m *GqlQuery) XXX_Unmarshal(b []byte) error {
851	return xxx_messageInfo_GqlQuery.Unmarshal(m, b)
852}
853func (m *GqlQuery) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
854	return xxx_messageInfo_GqlQuery.Marshal(b, m, deterministic)
855}
856func (dst *GqlQuery) XXX_Merge(src proto.Message) {
857	xxx_messageInfo_GqlQuery.Merge(dst, src)
858}
859func (m *GqlQuery) XXX_Size() int {
860	return xxx_messageInfo_GqlQuery.Size(m)
861}
862func (m *GqlQuery) XXX_DiscardUnknown() {
863	xxx_messageInfo_GqlQuery.DiscardUnknown(m)
864}
865
866var xxx_messageInfo_GqlQuery proto.InternalMessageInfo
867
868func (m *GqlQuery) GetQueryString() string {
869	if m != nil {
870		return m.QueryString
871	}
872	return ""
873}
874
875func (m *GqlQuery) GetAllowLiterals() bool {
876	if m != nil {
877		return m.AllowLiterals
878	}
879	return false
880}
881
882func (m *GqlQuery) GetNamedBindings() map[string]*GqlQueryParameter {
883	if m != nil {
884		return m.NamedBindings
885	}
886	return nil
887}
888
889func (m *GqlQuery) GetPositionalBindings() []*GqlQueryParameter {
890	if m != nil {
891		return m.PositionalBindings
892	}
893	return nil
894}
895
896// A binding parameter for a GQL query.
897type GqlQueryParameter struct {
898	// The type of parameter.
899	//
900	// Types that are valid to be assigned to ParameterType:
901	//	*GqlQueryParameter_Value
902	//	*GqlQueryParameter_Cursor
903	ParameterType        isGqlQueryParameter_ParameterType `protobuf_oneof:"parameter_type"`
904	XXX_NoUnkeyedLiteral struct{}                          `json:"-"`
905	XXX_unrecognized     []byte                            `json:"-"`
906	XXX_sizecache        int32                             `json:"-"`
907}
908
909func (m *GqlQueryParameter) Reset()         { *m = GqlQueryParameter{} }
910func (m *GqlQueryParameter) String() string { return proto.CompactTextString(m) }
911func (*GqlQueryParameter) ProtoMessage()    {}
912func (*GqlQueryParameter) Descriptor() ([]byte, []int) {
913	return fileDescriptor_query_1ba6ff8bae21b87f, []int{10}
914}
915func (m *GqlQueryParameter) XXX_Unmarshal(b []byte) error {
916	return xxx_messageInfo_GqlQueryParameter.Unmarshal(m, b)
917}
918func (m *GqlQueryParameter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
919	return xxx_messageInfo_GqlQueryParameter.Marshal(b, m, deterministic)
920}
921func (dst *GqlQueryParameter) XXX_Merge(src proto.Message) {
922	xxx_messageInfo_GqlQueryParameter.Merge(dst, src)
923}
924func (m *GqlQueryParameter) XXX_Size() int {
925	return xxx_messageInfo_GqlQueryParameter.Size(m)
926}
927func (m *GqlQueryParameter) XXX_DiscardUnknown() {
928	xxx_messageInfo_GqlQueryParameter.DiscardUnknown(m)
929}
930
931var xxx_messageInfo_GqlQueryParameter proto.InternalMessageInfo
932
933type isGqlQueryParameter_ParameterType interface {
934	isGqlQueryParameter_ParameterType()
935}
936
937type GqlQueryParameter_Value struct {
938	Value *Value `protobuf:"bytes,2,opt,name=value,proto3,oneof"`
939}
940type GqlQueryParameter_Cursor struct {
941	Cursor []byte `protobuf:"bytes,3,opt,name=cursor,proto3,oneof"`
942}
943
944func (*GqlQueryParameter_Value) isGqlQueryParameter_ParameterType()  {}
945func (*GqlQueryParameter_Cursor) isGqlQueryParameter_ParameterType() {}
946
947func (m *GqlQueryParameter) GetParameterType() isGqlQueryParameter_ParameterType {
948	if m != nil {
949		return m.ParameterType
950	}
951	return nil
952}
953
954func (m *GqlQueryParameter) GetValue() *Value {
955	if x, ok := m.GetParameterType().(*GqlQueryParameter_Value); ok {
956		return x.Value
957	}
958	return nil
959}
960
961func (m *GqlQueryParameter) GetCursor() []byte {
962	if x, ok := m.GetParameterType().(*GqlQueryParameter_Cursor); ok {
963		return x.Cursor
964	}
965	return nil
966}
967
968// XXX_OneofFuncs is for the internal use of the proto package.
969func (*GqlQueryParameter) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
970	return _GqlQueryParameter_OneofMarshaler, _GqlQueryParameter_OneofUnmarshaler, _GqlQueryParameter_OneofSizer, []interface{}{
971		(*GqlQueryParameter_Value)(nil),
972		(*GqlQueryParameter_Cursor)(nil),
973	}
974}
975
976func _GqlQueryParameter_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
977	m := msg.(*GqlQueryParameter)
978	// parameter_type
979	switch x := m.ParameterType.(type) {
980	case *GqlQueryParameter_Value:
981		b.EncodeVarint(2<<3 | proto.WireBytes)
982		if err := b.EncodeMessage(x.Value); err != nil {
983			return err
984		}
985	case *GqlQueryParameter_Cursor:
986		b.EncodeVarint(3<<3 | proto.WireBytes)
987		b.EncodeRawBytes(x.Cursor)
988	case nil:
989	default:
990		return fmt.Errorf("GqlQueryParameter.ParameterType has unexpected type %T", x)
991	}
992	return nil
993}
994
995func _GqlQueryParameter_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
996	m := msg.(*GqlQueryParameter)
997	switch tag {
998	case 2: // parameter_type.value
999		if wire != proto.WireBytes {
1000			return true, proto.ErrInternalBadWireType
1001		}
1002		msg := new(Value)
1003		err := b.DecodeMessage(msg)
1004		m.ParameterType = &GqlQueryParameter_Value{msg}
1005		return true, err
1006	case 3: // parameter_type.cursor
1007		if wire != proto.WireBytes {
1008			return true, proto.ErrInternalBadWireType
1009		}
1010		x, err := b.DecodeRawBytes(true)
1011		m.ParameterType = &GqlQueryParameter_Cursor{x}
1012		return true, err
1013	default:
1014		return false, nil
1015	}
1016}
1017
1018func _GqlQueryParameter_OneofSizer(msg proto.Message) (n int) {
1019	m := msg.(*GqlQueryParameter)
1020	// parameter_type
1021	switch x := m.ParameterType.(type) {
1022	case *GqlQueryParameter_Value:
1023		s := proto.Size(x.Value)
1024		n += 1 // tag and wire
1025		n += proto.SizeVarint(uint64(s))
1026		n += s
1027	case *GqlQueryParameter_Cursor:
1028		n += 1 // tag and wire
1029		n += proto.SizeVarint(uint64(len(x.Cursor)))
1030		n += len(x.Cursor)
1031	case nil:
1032	default:
1033		panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
1034	}
1035	return n
1036}
1037
1038// A batch of results produced by a query.
1039type QueryResultBatch struct {
1040	// The number of results skipped, typically because of an offset.
1041	SkippedResults int32 `protobuf:"varint,6,opt,name=skipped_results,json=skippedResults,proto3" json:"skipped_results,omitempty"`
1042	// A cursor that points to the position after the last skipped result.
1043	// Will be set when `skipped_results` != 0.
1044	SkippedCursor []byte `protobuf:"bytes,3,opt,name=skipped_cursor,json=skippedCursor,proto3" json:"skipped_cursor,omitempty"`
1045	// The result type for every entity in `entity_results`.
1046	EntityResultType EntityResult_ResultType `protobuf:"varint,1,opt,name=entity_result_type,json=entityResultType,proto3,enum=google.datastore.v1.EntityResult_ResultType" json:"entity_result_type,omitempty"`
1047	// The results for this batch.
1048	EntityResults []*EntityResult `protobuf:"bytes,2,rep,name=entity_results,json=entityResults,proto3" json:"entity_results,omitempty"`
1049	// A cursor that points to the position after the last result in the batch.
1050	EndCursor []byte `protobuf:"bytes,4,opt,name=end_cursor,json=endCursor,proto3" json:"end_cursor,omitempty"`
1051	// The state of the query after the current batch.
1052	MoreResults QueryResultBatch_MoreResultsType `protobuf:"varint,5,opt,name=more_results,json=moreResults,proto3,enum=google.datastore.v1.QueryResultBatch_MoreResultsType" json:"more_results,omitempty"`
1053	// The version number of the snapshot this batch was returned from.
1054	// This applies to the range of results from the query's `start_cursor` (or
1055	// the beginning of the query if no cursor was given) to this batch's
1056	// `end_cursor` (not the query's `end_cursor`).
1057	//
1058	// In a single transaction, subsequent query result batches for the same query
1059	// can have a greater snapshot version number. Each batch's snapshot version
1060	// is valid for all preceding batches.
1061	// The value will be zero for eventually consistent queries.
1062	SnapshotVersion      int64    `protobuf:"varint,7,opt,name=snapshot_version,json=snapshotVersion,proto3" json:"snapshot_version,omitempty"`
1063	XXX_NoUnkeyedLiteral struct{} `json:"-"`
1064	XXX_unrecognized     []byte   `json:"-"`
1065	XXX_sizecache        int32    `json:"-"`
1066}
1067
1068func (m *QueryResultBatch) Reset()         { *m = QueryResultBatch{} }
1069func (m *QueryResultBatch) String() string { return proto.CompactTextString(m) }
1070func (*QueryResultBatch) ProtoMessage()    {}
1071func (*QueryResultBatch) Descriptor() ([]byte, []int) {
1072	return fileDescriptor_query_1ba6ff8bae21b87f, []int{11}
1073}
1074func (m *QueryResultBatch) XXX_Unmarshal(b []byte) error {
1075	return xxx_messageInfo_QueryResultBatch.Unmarshal(m, b)
1076}
1077func (m *QueryResultBatch) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1078	return xxx_messageInfo_QueryResultBatch.Marshal(b, m, deterministic)
1079}
1080func (dst *QueryResultBatch) XXX_Merge(src proto.Message) {
1081	xxx_messageInfo_QueryResultBatch.Merge(dst, src)
1082}
1083func (m *QueryResultBatch) XXX_Size() int {
1084	return xxx_messageInfo_QueryResultBatch.Size(m)
1085}
1086func (m *QueryResultBatch) XXX_DiscardUnknown() {
1087	xxx_messageInfo_QueryResultBatch.DiscardUnknown(m)
1088}
1089
1090var xxx_messageInfo_QueryResultBatch proto.InternalMessageInfo
1091
1092func (m *QueryResultBatch) GetSkippedResults() int32 {
1093	if m != nil {
1094		return m.SkippedResults
1095	}
1096	return 0
1097}
1098
1099func (m *QueryResultBatch) GetSkippedCursor() []byte {
1100	if m != nil {
1101		return m.SkippedCursor
1102	}
1103	return nil
1104}
1105
1106func (m *QueryResultBatch) GetEntityResultType() EntityResult_ResultType {
1107	if m != nil {
1108		return m.EntityResultType
1109	}
1110	return EntityResult_RESULT_TYPE_UNSPECIFIED
1111}
1112
1113func (m *QueryResultBatch) GetEntityResults() []*EntityResult {
1114	if m != nil {
1115		return m.EntityResults
1116	}
1117	return nil
1118}
1119
1120func (m *QueryResultBatch) GetEndCursor() []byte {
1121	if m != nil {
1122		return m.EndCursor
1123	}
1124	return nil
1125}
1126
1127func (m *QueryResultBatch) GetMoreResults() QueryResultBatch_MoreResultsType {
1128	if m != nil {
1129		return m.MoreResults
1130	}
1131	return QueryResultBatch_MORE_RESULTS_TYPE_UNSPECIFIED
1132}
1133
1134func (m *QueryResultBatch) GetSnapshotVersion() int64 {
1135	if m != nil {
1136		return m.SnapshotVersion
1137	}
1138	return 0
1139}
1140
1141func init() {
1142	proto.RegisterType((*EntityResult)(nil), "google.datastore.v1.EntityResult")
1143	proto.RegisterType((*Query)(nil), "google.datastore.v1.Query")
1144	proto.RegisterType((*KindExpression)(nil), "google.datastore.v1.KindExpression")
1145	proto.RegisterType((*PropertyReference)(nil), "google.datastore.v1.PropertyReference")
1146	proto.RegisterType((*Projection)(nil), "google.datastore.v1.Projection")
1147	proto.RegisterType((*PropertyOrder)(nil), "google.datastore.v1.PropertyOrder")
1148	proto.RegisterType((*Filter)(nil), "google.datastore.v1.Filter")
1149	proto.RegisterType((*CompositeFilter)(nil), "google.datastore.v1.CompositeFilter")
1150	proto.RegisterType((*PropertyFilter)(nil), "google.datastore.v1.PropertyFilter")
1151	proto.RegisterType((*GqlQuery)(nil), "google.datastore.v1.GqlQuery")
1152	proto.RegisterMapType((map[string]*GqlQueryParameter)(nil), "google.datastore.v1.GqlQuery.NamedBindingsEntry")
1153	proto.RegisterType((*GqlQueryParameter)(nil), "google.datastore.v1.GqlQueryParameter")
1154	proto.RegisterType((*QueryResultBatch)(nil), "google.datastore.v1.QueryResultBatch")
1155	proto.RegisterEnum("google.datastore.v1.EntityResult_ResultType", EntityResult_ResultType_name, EntityResult_ResultType_value)
1156	proto.RegisterEnum("google.datastore.v1.PropertyOrder_Direction", PropertyOrder_Direction_name, PropertyOrder_Direction_value)
1157	proto.RegisterEnum("google.datastore.v1.CompositeFilter_Operator", CompositeFilter_Operator_name, CompositeFilter_Operator_value)
1158	proto.RegisterEnum("google.datastore.v1.PropertyFilter_Operator", PropertyFilter_Operator_name, PropertyFilter_Operator_value)
1159	proto.RegisterEnum("google.datastore.v1.QueryResultBatch_MoreResultsType", QueryResultBatch_MoreResultsType_name, QueryResultBatch_MoreResultsType_value)
1160}
1161
1162func init() {
1163	proto.RegisterFile("google/datastore/v1/query.proto", fileDescriptor_query_1ba6ff8bae21b87f)
1164}
1165
1166var fileDescriptor_query_1ba6ff8bae21b87f = []byte{
1167	// 1313 bytes of a gzipped FileDescriptorProto
1168	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x56, 0xdd, 0x72, 0xd3, 0x46,
1169	0x14, 0x8e, 0x64, 0x3b, 0x89, 0x8f, 0xff, 0xc4, 0xd2, 0x82, 0x08, 0x50, 0x12, 0x41, 0x4b, 0x3a,
1170	0x03, 0x36, 0x31, 0xc3, 0x94, 0x69, 0xe9, 0x74, 0xfc, 0xa3, 0xc4, 0x06, 0x63, 0x39, 0x6b, 0x27,
1171	0x14, 0x86, 0x19, 0x8d, 0xb0, 0x37, 0x46, 0x45, 0x96, 0xc4, 0x4a, 0x09, 0xcd, 0x83, 0x74, 0xa6,
1172	0x37, 0x7d, 0x81, 0x3e, 0x40, 0x2f, 0xfa, 0x00, 0x6d, 0xa7, 0xcf, 0xd0, 0xeb, 0x5e, 0xf7, 0x11,
1173	0x3a, 0xda, 0x5d, 0xf9, 0x2f, 0xc6, 0xe4, 0x82, 0x3b, 0xed, 0xd9, 0xef, 0xfb, 0xce, 0x9e, 0xb3,
1174	0x67, 0x8f, 0x0e, 0xdc, 0x18, 0x7a, 0xde, 0xd0, 0x21, 0xa5, 0x81, 0x15, 0x5a, 0x41, 0xe8, 0x51,
1175	0x52, 0x3a, 0xd9, 0x29, 0xbd, 0x3d, 0x26, 0xf4, 0xb4, 0xe8, 0x53, 0x2f, 0xf4, 0xd0, 0x45, 0x0e,
1176	0x28, 0x8e, 0x01, 0xc5, 0x93, 0x9d, 0x8d, 0x6b, 0x82, 0x65, 0xf9, 0x76, 0xc9, 0x72, 0x5d, 0x2f,
1177	0xb4, 0x42, 0xdb, 0x73, 0x03, 0x4e, 0xd9, 0xd8, 0x5c, 0xa4, 0x49, 0xdc, 0xd0, 0x0e, 0x85, 0xe8,
1178	0xc6, 0x67, 0x02, 0xc1, 0x56, 0xaf, 0x8e, 0x8f, 0x4a, 0xef, 0xa8, 0xe5, 0xfb, 0x84, 0xc6, 0x0a,
1179	0xaa, 0xd8, 0x0f, 0x4f, 0x7d, 0x52, 0x72, 0xac, 0xd0, 0x71, 0x87, 0x7c, 0x47, 0xfb, 0x4b, 0x82,
1180	0xac, 0xce, 0xa4, 0x30, 0x09, 0x8e, 0x9d, 0x10, 0xdd, 0x87, 0x55, 0x2e, 0xad, 0x4a, 0x9b, 0xd2,
1181	0x76, 0xa6, 0x7c, 0xb5, 0xb8, 0xe0, 0xc0, 0x45, 0x41, 0x11, 0x50, 0xa4, 0xc2, 0xda, 0x09, 0xa1,
1182	0x81, 0xed, 0xb9, 0x6a, 0x72, 0x53, 0xda, 0x4e, 0xe0, 0x78, 0x89, 0x2e, 0xc1, 0x6a, 0xff, 0x98,
1183	0x06, 0x1e, 0x55, 0x13, 0x9b, 0xd2, 0x76, 0x16, 0x8b, 0x95, 0xb6, 0x0f, 0xc0, 0x1d, 0xf6, 0x4e,
1184	0x7d, 0x82, 0xae, 0xc2, 0x65, 0xac, 0x77, 0x0f, 0x5a, 0x3d, 0xb3, 0xf7, 0xbc, 0xa3, 0x9b, 0x07,
1185	0xed, 0x6e, 0x47, 0xaf, 0x35, 0x77, 0x9b, 0x7a, 0x5d, 0x59, 0x41, 0xeb, 0x90, 0xdc, 0x3d, 0x68,
1186	0xb5, 0x14, 0x09, 0xe5, 0x01, 0x3a, 0xd8, 0x78, 0xac, 0xd7, 0x7a, 0x4d, 0xa3, 0xad, 0xc8, 0x28,
1187	0x0b, 0xeb, 0x4f, 0xf4, 0xe7, 0xa6, 0xd1, 0x6e, 0x3d, 0x57, 0x12, 0xda, 0x1f, 0x09, 0x48, 0xed,
1188	0x47, 0x99, 0x46, 0xdf, 0x01, 0xf8, 0xd4, 0xfb, 0x81, 0xf4, 0xa3, 0x2c, 0xaa, 0xf2, 0x66, 0x62,
1189	0x3b, 0x53, 0xbe, 0xb1, 0x30, 0x8e, 0xce, 0x18, 0x86, 0xa7, 0x28, 0xe8, 0x2b, 0x48, 0xbe, 0xb1,
1190	0xdd, 0x81, 0x9a, 0x60, 0xd4, 0x9b, 0x0b, 0xa9, 0x4f, 0x6c, 0x77, 0xa0, 0xff, 0xe8, 0x53, 0x12,
1191	0x44, 0x81, 0x62, 0x46, 0x88, 0xb2, 0x77, 0x64, 0x3b, 0x21, 0xa1, 0x2c, 0x0f, 0xef, 0xcb, 0xde,
1192	0x2e, 0x83, 0x60, 0x01, 0x45, 0x0f, 0x21, 0xe5, 0xd1, 0x01, 0xa1, 0x6a, 0x8a, 0xb9, 0xd3, 0xde,
1193	0x77, 0x52, 0x9f, 0xd0, 0xf0, 0xd4, 0x88, 0x90, 0x98, 0x13, 0xd0, 0x1e, 0x64, 0x06, 0x76, 0x10,
1194	0xda, 0x6e, 0x3f, 0x34, 0x3d, 0x57, 0x5d, 0x65, 0xfc, 0x2f, 0x96, 0xf2, 0x31, 0x39, 0x22, 0x94,
1195	0xb8, 0x7d, 0x82, 0x21, 0xa6, 0x1a, 0x2e, 0xda, 0x82, 0x6c, 0x10, 0x5a, 0x34, 0x34, 0xc5, 0x65,
1196	0xad, 0xb1, 0xcb, 0xca, 0x30, 0x5b, 0x8d, 0x99, 0xd0, 0x75, 0x00, 0xe2, 0x0e, 0x62, 0xc0, 0x3a,
1197	0x03, 0xa4, 0x89, 0x3b, 0x10, 0xdb, 0x97, 0x60, 0xd5, 0x3b, 0x3a, 0x0a, 0x48, 0xa8, 0xc2, 0xa6,
1198	0xb4, 0x9d, 0xc2, 0x62, 0x85, 0x76, 0x20, 0xe5, 0xd8, 0x23, 0x3b, 0x54, 0xb3, 0xb3, 0x09, 0x89,
1199	0x4b, 0xb5, 0xd8, 0x74, 0xc3, 0xfb, 0xe5, 0x43, 0xcb, 0x39, 0x26, 0x98, 0x23, 0xb5, 0x5b, 0x90,
1200	0x9f, 0x4d, 0x2e, 0x42, 0x90, 0x74, 0xad, 0x11, 0x61, 0x25, 0x99, 0xc6, 0xec, 0x5b, 0xbb, 0x0d,
1201	0x17, 0xce, 0xc4, 0x34, 0x06, 0xca, 0x53, 0xc0, 0x0e, 0xc0, 0xe4, 0x9a, 0x51, 0x15, 0xd6, 0x7d,
1202	0x41, 0x13, 0x15, 0x7e, 0xde, 0x7c, 0x8d, 0x79, 0xda, 0xbf, 0x12, 0xe4, 0x66, 0xee, 0xe3, 0x63,
1203	0xa8, 0xa2, 0xc7, 0x90, 0x1e, 0xd8, 0x74, 0x5c, 0xb4, 0xd2, 0x76, 0xbe, 0x7c, 0xe7, 0xc3, 0xa5,
1204	0x50, 0xac, 0xc7, 0x1c, 0x3c, 0xa1, 0x6b, 0x3a, 0xa4, 0xc7, 0x76, 0x74, 0x05, 0x3e, 0xad, 0x37,
1205	0x31, 0x7f, 0x35, 0x73, 0x6f, 0x2b, 0x07, 0xe9, 0x4a, 0xb7, 0xa6, 0xb7, 0xeb, 0xcd, 0xf6, 0x1e,
1206	0x7f, 0x60, 0x75, 0x7d, 0xbc, 0x96, 0xb5, 0xdf, 0x25, 0x58, 0xe5, 0xc5, 0x8a, 0xf6, 0x41, 0xe9,
1207	0x7b, 0x23, 0xdf, 0x0b, 0xec, 0x90, 0x98, 0xa2, 0xc6, 0x79, 0xa4, 0xb7, 0x16, 0x1e, 0xb2, 0x16,
1208	0x83, 0x39, 0xbf, 0xb1, 0x82, 0x0b, 0xfd, 0x59, 0x13, 0x6a, 0x43, 0x21, 0x0e, 0x3e, 0x56, 0x94,
1209	0x99, 0xe2, 0xcd, 0xa5, 0x61, 0x8f, 0x05, 0xf3, 0xfe, 0x8c, 0xa5, 0x9a, 0x83, 0x0c, 0x97, 0x31,
1210	0xa3, 0x3e, 0xa7, 0xfd, 0x26, 0x41, 0x61, 0xee, 0x14, 0xe8, 0x5b, 0x90, 0x3d, 0x9f, 0x9d, 0x3b,
1211	0x5f, 0xbe, 0x7b, 0x9e, 0x73, 0x17, 0x0d, 0x9f, 0x50, 0x2b, 0xf4, 0x28, 0x96, 0x3d, 0x1f, 0x3d,
1212	0x80, 0x35, 0xee, 0x21, 0x10, 0x5d, 0x65, 0xe9, 0xfb, 0x8e, 0xb1, 0xda, 0x5d, 0x58, 0x8f, 0x65,
1213	0x90, 0x0a, 0x9f, 0x18, 0x1d, 0x1d, 0x57, 0x7a, 0x06, 0x9e, 0xbb, 0x8b, 0x35, 0x48, 0x54, 0xda,
1214	0x75, 0x45, 0xd2, 0xfe, 0x91, 0x21, 0x3f, 0x1b, 0xec, 0x47, 0xa9, 0xaf, 0x47, 0x2c, 0xf6, 0xf3,
1215	0x14, 0xd6, 0xa2, 0xd0, 0xef, 0x41, 0xea, 0x24, 0x7a, 0xa4, 0xac, 0x8f, 0x67, 0xca, 0x1b, 0x0b,
1216	0x05, 0xc4, 0x33, 0x66, 0x40, 0xed, 0x27, 0xe9, 0x5c, 0x61, 0xe7, 0x20, 0xdd, 0xd2, 0xbb, 0x5d,
1217	0xb3, 0xd7, 0xa8, 0xb4, 0x15, 0x09, 0x5d, 0x02, 0x34, 0x5e, 0x9a, 0x06, 0x36, 0xf5, 0xfd, 0x83,
1218	0x4a, 0x4b, 0x91, 0x91, 0x02, 0xd9, 0x3d, 0xac, 0x57, 0x7a, 0x3a, 0xe6, 0xc8, 0x44, 0x54, 0xd6,
1219	0xd3, 0x96, 0x09, 0x38, 0x89, 0xd2, 0x90, 0xe2, 0x9f, 0xa9, 0x88, 0xd7, 0xa8, 0x74, 0xcd, 0x4a,
1220	0xbb, 0xa6, 0x77, 0x7b, 0x06, 0x56, 0x32, 0xda, 0x7f, 0x32, 0xac, 0xef, 0xbd, 0x75, 0xf8, 0xaf,
1221	0x62, 0x0b, 0xb2, 0xec, 0xef, 0x6c, 0x06, 0x21, 0xb5, 0xdd, 0xa1, 0xe8, 0x30, 0x19, 0x66, 0xeb,
1222	0x32, 0x13, 0xfa, 0x1c, 0xf2, 0x96, 0xe3, 0x78, 0xef, 0x4c, 0xc7, 0x0e, 0x09, 0xb5, 0x9c, 0x80,
1223	0xe5, 0x70, 0x1d, 0xe7, 0x98, 0xb5, 0x25, 0x8c, 0xe8, 0x19, 0xe4, 0xa3, 0x76, 0x33, 0x30, 0x5f,
1224	0xd9, 0xee, 0xc0, 0x76, 0x87, 0x81, 0x68, 0xe7, 0xf7, 0x16, 0x66, 0x2a, 0x3e, 0x40, 0xb1, 0x1d,
1225	0x71, 0xaa, 0x82, 0xa2, 0xbb, 0x21, 0x3d, 0xc5, 0x39, 0x77, 0xda, 0x86, 0x9e, 0xc1, 0x45, 0x56,
1226	0x91, 0xb6, 0xe7, 0x5a, 0xce, 0x44, 0x3d, 0xb9, 0xa4, 0xd9, 0xc7, 0xea, 0x1d, 0x8b, 0x5a, 0x23,
1227	0x12, 0xd5, 0x22, 0x9a, 0x48, 0xc4, 0xc2, 0x1b, 0xaf, 0x01, 0x9d, 0xf5, 0x8e, 0x14, 0x48, 0xbc,
1228	0x21, 0xa7, 0x22, 0x11, 0xd1, 0x27, 0x7a, 0x14, 0x5f, 0xbd, 0xbc, 0xa4, 0xf2, 0xce, 0xba, 0xe4,
1229	0xa4, 0xaf, 0xe5, 0x87, 0x92, 0x16, 0xc0, 0x85, 0x33, 0xfb, 0xa8, 0x3c, 0x2b, 0xbb, 0xa4, 0xa2,
1230	0x1a, 0x2b, 0x42, 0x0c, 0xa9, 0xb3, 0xe3, 0x44, 0x63, 0x25, 0x1e, 0x28, 0xaa, 0x0a, 0xe4, 0xfd,
1231	0x58, 0x9a, 0xbf, 0xff, 0x3f, 0x93, 0xa0, 0x30, 0x97, 0x7c, 0xd0, 0xa8, 0x5a, 0x61, 0xff, 0x35,
1232	0xba, 0x0d, 0x85, 0xe0, 0x8d, 0xed, 0xfb, 0x64, 0x60, 0x52, 0x66, 0x0e, 0xd4, 0x55, 0xf6, 0xbf,
1233	0xca, 0x0b, 0x33, 0x07, 0x07, 0xd1, 0xad, 0xc7, 0xc0, 0x99, 0x01, 0x26, 0x27, 0xac, 0xe2, 0xb7,
1234	0xf7, 0x02, 0x10, 0x9f, 0x81, 0x84, 0x1c, 0x73, 0x2d, 0x1a, 0xcc, 0x9d, 0x65, 0xa3, 0x13, 0x43,
1235	0x17, 0x27, 0x33, 0x10, 0x56, 0xc8, 0xd4, 0x06, 0x9b, 0x8a, 0x1a, 0x90, 0x9f, 0xd1, 0x8e, 0x9b,
1236	0xce, 0xd6, 0x07, 0x75, 0x71, 0x6e, 0x5a, 0x2c, 0x98, 0xfb, 0x77, 0x27, 0xe7, 0xff, 0xdd, 0xdf,
1237	0x43, 0x76, 0xe4, 0x51, 0x32, 0x76, 0x93, 0x62, 0xc7, 0x7f, 0xb0, 0xd0, 0xcd, 0x7c, 0x46, 0x8b,
1238	0x4f, 0x3d, 0x4a, 0x84, 0x1f, 0x16, 0x47, 0x66, 0x34, 0x31, 0xa0, 0x2f, 0x41, 0x09, 0x5c, 0xcb,
1239	0x0f, 0x5e, 0x7b, 0xa1, 0x19, 0x4f, 0x88, 0x6b, 0x6c, 0x42, 0x2c, 0xc4, 0xf6, 0x43, 0x6e, 0xd6,
1240	0x7e, 0x96, 0xa0, 0x30, 0xa7, 0x85, 0xb6, 0xe0, 0xfa, 0x53, 0x03, 0xeb, 0x26, 0x1f, 0x0e, 0xbb,
1241	0x8b, 0xa6, 0x43, 0x05, 0xb2, 0x6d, 0xa3, 0x67, 0xee, 0x36, 0xdb, 0xcd, 0x6e, 0x43, 0xaf, 0x2b,
1242	0x12, 0xba, 0x06, 0xea, 0x0c, 0xa9, 0xb2, 0x1b, 0xb5, 0x88, 0x56, 0xf3, 0x69, 0xb3, 0xa7, 0xc8,
1243	0xe8, 0x3a, 0x5c, 0x59, 0xb0, 0x5b, 0x3b, 0xc0, 0x5d, 0x03, 0x2b, 0x49, 0x74, 0x11, 0x0a, 0x6d,
1244	0xc3, 0x9c, 0x46, 0x28, 0x89, 0xea, 0x2f, 0x12, 0x5c, 0xee, 0x7b, 0xa3, 0x45, 0xf9, 0xa8, 0x02,
1245	0xaf, 0xea, 0x68, 0x9a, 0xe9, 0x48, 0x2f, 0x1e, 0x09, 0xc8, 0xd0, 0x73, 0x2c, 0x77, 0x58, 0xf4,
1246	0xe8, 0xb0, 0x34, 0x24, 0x2e, 0x9b, 0x75, 0x4a, 0x7c, 0xcb, 0xf2, 0xed, 0x60, 0x66, 0x92, 0xff,
1247	0x66, 0xbc, 0xf8, 0x55, 0xbe, 0xb2, 0xc7, 0xe9, 0x35, 0xc7, 0x3b, 0x1e, 0x14, 0xeb, 0x63, 0x3f,
1248	0x87, 0x3b, 0x7f, 0xc7, 0x7b, 0x2f, 0xd9, 0xde, 0xcb, 0xf1, 0xde, 0xcb, 0xc3, 0x9d, 0x57, 0xab,
1249	0xcc, 0xc1, 0xfd, 0xff, 0x03, 0x00, 0x00, 0xff, 0xff, 0xcd, 0x38, 0x05, 0xaa, 0x7d, 0x0c, 0x00,
1250	0x00,
1251}
1252