# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: google/cloud/datastore_v1/proto/query.proto

import sys
_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
from google.protobuf import descriptor as _descriptor
from google.protobuf import message as _message
from google.protobuf import reflection as _reflection
from google.protobuf import symbol_database as _symbol_database
from google.protobuf import descriptor_pb2
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()


from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2
from google.cloud.datastore_v1.proto import entity_pb2 as google_dot_cloud_dot_datastore__v1_dot_proto_dot_entity__pb2
from google.protobuf import wrappers_pb2 as google_dot_protobuf_dot_wrappers__pb2
from google.type import latlng_pb2 as google_dot_type_dot_latlng__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
  name='google/cloud/datastore_v1/proto/query.proto',
  package='google.datastore.v1',
  syntax='proto3',
  serialized_pb=_b('\n+google/cloud/datastore_v1/proto/query.proto\x12\x13google.datastore.v1\x1a\x1cgoogle/api/annotations.proto\x1a,google/cloud/datastore_v1/proto/entity.proto\x1a\x1egoogle/protobuf/wrappers.proto\x1a\x18google/type/latlng.proto\"\xaf\x01\n\x0c\x45ntityResult\x12+\n\x06\x65ntity\x18\x01 \x01(\x0b\x32\x1b.google.datastore.v1.Entity\x12\x0f\n\x07version\x18\x04 \x01(\x03\x12\x0e\n\x06\x63ursor\x18\x03 \x01(\x0c\"Q\n\nResultType\x12\x1b\n\x17RESULT_TYPE_UNSPECIFIED\x10\x00\x12\x08\n\x04\x46ULL\x10\x01\x12\x0e\n\nPROJECTION\x10\x02\x12\x0c\n\x08KEY_ONLY\x10\x03\"\xf2\x02\n\x05Query\x12\x33\n\nprojection\x18\x02 \x03(\x0b\x32\x1f.google.datastore.v1.Projection\x12\x31\n\x04kind\x18\x03 \x03(\x0b\x32#.google.datastore.v1.KindExpression\x12+\n\x06\x66ilter\x18\x04 \x01(\x0b\x32\x1b.google.datastore.v1.Filter\x12\x31\n\x05order\x18\x05 \x03(\x0b\x32\".google.datastore.v1.PropertyOrder\x12;\n\x0b\x64istinct_on\x18\x06 \x03(\x0b\x32&.google.datastore.v1.PropertyReference\x12\x14\n\x0cstart_cursor\x18\x07 \x01(\x0c\x12\x12\n\nend_cursor\x18\x08 \x01(\x0c\x12\x0e\n\x06offset\x18\n \x01(\x05\x12*\n\x05limit\x18\x0c \x01(\x0b\x32\x1b.google.protobuf.Int32Value\"\x1e\n\x0eKindExpression\x12\x0c\n\x04name\x18\x01 \x01(\t\"!\n\x11PropertyReference\x12\x0c\n\x04name\x18\x02 \x01(\t\"F\n\nProjection\x12\x38\n\x08property\x18\x01 \x01(\x0b\x32&.google.datastore.v1.PropertyReference\"\xd1\x01\n\rPropertyOrder\x12\x38\n\x08property\x18\x01 \x01(\x0b\x32&.google.datastore.v1.PropertyReference\x12?\n\tdirection\x18\x02 \x01(\x0e\x32,.google.datastore.v1.PropertyOrder.Direction\"E\n\tDirection\x12\x19\n\x15\x44IRECTION_UNSPECIFIED\x10\x00\x12\r\n\tASCENDING\x10\x01\x12\x0e\n\nDESCENDING\x10\x02\"\x99\x01\n\x06\x46ilter\x12@\n\x10\x63omposite_filter\x18\x01 \x01(\x0b\x32$.google.datastore.v1.CompositeFilterH\x00\x12>\n\x0fproperty_filter\x18\x02 \x01(\x0b\x32#.google.datastore.v1.PropertyFilterH\x00\x42\r\n\x0b\x66ilter_type\"\xa9\x01\n\x0f\x43ompositeFilter\x12\x39\n\x02op\x18\x01 \x01(\x0e\x32-.google.datastore.v1.CompositeFilter.Operator\x12,\n\x07\x66ilters\x18\x02 \x03(\x0b\x32\x1b.google.datastore.v1.Filter\"-\n\x08Operator\x12\x18\n\x14OPERATOR_UNSPECIFIED\x10\x00\x12\x07\n\x03\x41ND\x10\x01\"\xc7\x02\n\x0ePropertyFilter\x12\x38\n\x08property\x18\x01 \x01(\x0b\x32&.google.datastore.v1.PropertyReference\x12\x38\n\x02op\x18\x02 \x01(\x0e\x32,.google.datastore.v1.PropertyFilter.Operator\x12)\n\x05value\x18\x03 \x01(\x0b\x32\x1a.google.datastore.v1.Value\"\x95\x01\n\x08Operator\x12\x18\n\x14OPERATOR_UNSPECIFIED\x10\x00\x12\r\n\tLESS_THAN\x10\x01\x12\x16\n\x12LESS_THAN_OR_EQUAL\x10\x02\x12\x10\n\x0cGREATER_THAN\x10\x03\x12\x19\n\x15GREATER_THAN_OR_EQUAL\x10\x04\x12\t\n\x05\x45QUAL\x10\x05\x12\x10\n\x0cHAS_ANCESTOR\x10\x0b\"\xa5\x02\n\x08GqlQuery\x12\x14\n\x0cquery_string\x18\x01 \x01(\t\x12\x16\n\x0e\x61llow_literals\x18\x02 \x01(\x08\x12H\n\x0enamed_bindings\x18\x05 \x03(\x0b\x32\x30.google.datastore.v1.GqlQuery.NamedBindingsEntry\x12\x43\n\x13positional_bindings\x18\x04 \x03(\x0b\x32&.google.datastore.v1.GqlQueryParameter\x1a\\\n\x12NamedBindingsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x35\n\x05value\x18\x02 \x01(\x0b\x32&.google.datastore.v1.GqlQueryParameter:\x02\x38\x01\"d\n\x11GqlQueryParameter\x12+\n\x05value\x18\x02 \x01(\x0b\x32\x1a.google.datastore.v1.ValueH\x00\x12\x10\n\x06\x63ursor\x18\x03 \x01(\x0cH\x00\x42\x10\n\x0eparameter_type\"\xde\x03\n\x10QueryResultBatch\x12\x17\n\x0fskipped_results\x18\x06 \x01(\x05\x12\x16\n\x0eskipped_cursor\x18\x03 \x01(\x0c\x12H\n\x12\x65ntity_result_type\x18\x01 \x01(\x0e\x32,.google.datastore.v1.EntityResult.ResultType\x12\x39\n\x0e\x65ntity_results\x18\x02 \x03(\x0b\x32!.google.datastore.v1.EntityResult\x12\x12\n\nend_cursor\x18\x04 \x01(\x0c\x12K\n\x0cmore_results\x18\x05 \x01(\x0e\x32\x35.google.datastore.v1.QueryResultBatch.MoreResultsType\x12\x18\n\x10snapshot_version\x18\x07 \x01(\x03\"\x98\x01\n\x0fMoreResultsType\x12!\n\x1dMORE_RESULTS_TYPE_UNSPECIFIED\x10\x00\x12\x10\n\x0cNOT_FINISHED\x10\x01\x12\x1c\n\x18MORE_RESULTS_AFTER_LIMIT\x10\x02\x12\x1d\n\x19MORE_RESULTS_AFTER_CURSOR\x10\x04\x12\x13\n\x0fNO_MORE_RESULTS\x10\x03\x42\x81\x01\n\x17\x63om.google.datastore.v1B\nQueryProtoP\x01Z<google.golang.org/genproto/googleapis/datastore/v1;datastore\xaa\x02\x19Google.Cloud.Datastore.V1b\x06proto3')
  ,
  dependencies=[google_dot_api_dot_annotations__pb2.DESCRIPTOR,google_dot_cloud_dot_datastore__v1_dot_proto_dot_entity__pb2.DESCRIPTOR,google_dot_protobuf_dot_wrappers__pb2.DESCRIPTOR,google_dot_type_dot_latlng__pb2.DESCRIPTOR,])



_ENTITYRESULT_RESULTTYPE = _descriptor.EnumDescriptor(
  name='ResultType',
  full_name='google.datastore.v1.EntityResult.ResultType',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='RESULT_TYPE_UNSPECIFIED', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='FULL', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='PROJECTION', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='KEY_ONLY', index=3, number=3,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=297,
  serialized_end=378,
)
_sym_db.RegisterEnumDescriptor(_ENTITYRESULT_RESULTTYPE)

_PROPERTYORDER_DIRECTION = _descriptor.EnumDescriptor(
  name='Direction',
  full_name='google.datastore.v1.PropertyOrder.Direction',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='DIRECTION_UNSPECIFIED', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='ASCENDING', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='DESCENDING', index=2, number=2,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=1033,
  serialized_end=1102,
)
_sym_db.RegisterEnumDescriptor(_PROPERTYORDER_DIRECTION)

_COMPOSITEFILTER_OPERATOR = _descriptor.EnumDescriptor(
  name='Operator',
  full_name='google.datastore.v1.CompositeFilter.Operator',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OPERATOR_UNSPECIFIED', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='AND', index=1, number=1,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=1385,
  serialized_end=1430,
)
_sym_db.RegisterEnumDescriptor(_COMPOSITEFILTER_OPERATOR)

_PROPERTYFILTER_OPERATOR = _descriptor.EnumDescriptor(
  name='Operator',
  full_name='google.datastore.v1.PropertyFilter.Operator',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OPERATOR_UNSPECIFIED', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='LESS_THAN', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='LESS_THAN_OR_EQUAL', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='GREATER_THAN', index=3, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='GREATER_THAN_OR_EQUAL', index=4, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='EQUAL', index=5, number=5,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='HAS_ANCESTOR', index=6, number=11,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=1611,
  serialized_end=1760,
)
_sym_db.RegisterEnumDescriptor(_PROPERTYFILTER_OPERATOR)

_QUERYRESULTBATCH_MORERESULTSTYPE = _descriptor.EnumDescriptor(
  name='MoreResultsType',
  full_name='google.datastore.v1.QueryResultBatch.MoreResultsType',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='MORE_RESULTS_TYPE_UNSPECIFIED', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='NOT_FINISHED', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MORE_RESULTS_AFTER_LIMIT', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MORE_RESULTS_AFTER_CURSOR', index=3, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='NO_MORE_RESULTS', index=4, number=3,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=2487,
  serialized_end=2639,
)
_sym_db.RegisterEnumDescriptor(_QUERYRESULTBATCH_MORERESULTSTYPE)


_ENTITYRESULT = _descriptor.Descriptor(
  name='EntityResult',
  full_name='google.datastore.v1.EntityResult',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='entity', full_name='google.datastore.v1.EntityResult.entity', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='version', full_name='google.datastore.v1.EntityResult.version', index=1,
      number=4, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='cursor', full_name='google.datastore.v1.EntityResult.cursor', index=2,
      number=3, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _ENTITYRESULT_RESULTTYPE,
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=203,
  serialized_end=378,
)


_QUERY = _descriptor.Descriptor(
  name='Query',
  full_name='google.datastore.v1.Query',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='projection', full_name='google.datastore.v1.Query.projection', index=0,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='kind', full_name='google.datastore.v1.Query.kind', index=1,
      number=3, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='filter', full_name='google.datastore.v1.Query.filter', index=2,
      number=4, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='order', full_name='google.datastore.v1.Query.order', index=3,
      number=5, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='distinct_on', full_name='google.datastore.v1.Query.distinct_on', index=4,
      number=6, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='start_cursor', full_name='google.datastore.v1.Query.start_cursor', index=5,
      number=7, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='end_cursor', full_name='google.datastore.v1.Query.end_cursor', index=6,
      number=8, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='offset', full_name='google.datastore.v1.Query.offset', index=7,
      number=10, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='limit', full_name='google.datastore.v1.Query.limit', index=8,
      number=12, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=381,
  serialized_end=751,
)


_KINDEXPRESSION = _descriptor.Descriptor(
  name='KindExpression',
  full_name='google.datastore.v1.KindExpression',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='name', full_name='google.datastore.v1.KindExpression.name', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=753,
  serialized_end=783,
)


_PROPERTYREFERENCE = _descriptor.Descriptor(
  name='PropertyReference',
  full_name='google.datastore.v1.PropertyReference',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='name', full_name='google.datastore.v1.PropertyReference.name', index=0,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=785,
  serialized_end=818,
)


_PROJECTION = _descriptor.Descriptor(
  name='Projection',
  full_name='google.datastore.v1.Projection',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='property', full_name='google.datastore.v1.Projection.property', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=820,
  serialized_end=890,
)


_PROPERTYORDER = _descriptor.Descriptor(
  name='PropertyOrder',
  full_name='google.datastore.v1.PropertyOrder',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='property', full_name='google.datastore.v1.PropertyOrder.property', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='direction', full_name='google.datastore.v1.PropertyOrder.direction', index=1,
      number=2, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _PROPERTYORDER_DIRECTION,
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=893,
  serialized_end=1102,
)


_FILTER = _descriptor.Descriptor(
  name='Filter',
  full_name='google.datastore.v1.Filter',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='composite_filter', full_name='google.datastore.v1.Filter.composite_filter', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='property_filter', full_name='google.datastore.v1.Filter.property_filter', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='filter_type', full_name='google.datastore.v1.Filter.filter_type',
      index=0, containing_type=None, fields=[]),
  ],
  serialized_start=1105,
  serialized_end=1258,
)


_COMPOSITEFILTER = _descriptor.Descriptor(
  name='CompositeFilter',
  full_name='google.datastore.v1.CompositeFilter',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='op', full_name='google.datastore.v1.CompositeFilter.op', index=0,
      number=1, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='filters', full_name='google.datastore.v1.CompositeFilter.filters', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _COMPOSITEFILTER_OPERATOR,
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1261,
  serialized_end=1430,
)


_PROPERTYFILTER = _descriptor.Descriptor(
  name='PropertyFilter',
  full_name='google.datastore.v1.PropertyFilter',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='property', full_name='google.datastore.v1.PropertyFilter.property', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='op', full_name='google.datastore.v1.PropertyFilter.op', index=1,
      number=2, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='value', full_name='google.datastore.v1.PropertyFilter.value', index=2,
      number=3, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _PROPERTYFILTER_OPERATOR,
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1433,
  serialized_end=1760,
)


_GQLQUERY_NAMEDBINDINGSENTRY = _descriptor.Descriptor(
  name='NamedBindingsEntry',
  full_name='google.datastore.v1.GqlQuery.NamedBindingsEntry',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='key', full_name='google.datastore.v1.GqlQuery.NamedBindingsEntry.key', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='value', full_name='google.datastore.v1.GqlQuery.NamedBindingsEntry.value', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=_descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('8\001')),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1964,
  serialized_end=2056,
)

_GQLQUERY = _descriptor.Descriptor(
  name='GqlQuery',
  full_name='google.datastore.v1.GqlQuery',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='query_string', full_name='google.datastore.v1.GqlQuery.query_string', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='allow_literals', full_name='google.datastore.v1.GqlQuery.allow_literals', index=1,
      number=2, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='named_bindings', full_name='google.datastore.v1.GqlQuery.named_bindings', index=2,
      number=5, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='positional_bindings', full_name='google.datastore.v1.GqlQuery.positional_bindings', index=3,
      number=4, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[_GQLQUERY_NAMEDBINDINGSENTRY, ],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1763,
  serialized_end=2056,
)


_GQLQUERYPARAMETER = _descriptor.Descriptor(
  name='GqlQueryParameter',
  full_name='google.datastore.v1.GqlQueryParameter',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='value', full_name='google.datastore.v1.GqlQueryParameter.value', index=0,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='cursor', full_name='google.datastore.v1.GqlQueryParameter.cursor', index=1,
      number=3, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='parameter_type', full_name='google.datastore.v1.GqlQueryParameter.parameter_type',
      index=0, containing_type=None, fields=[]),
  ],
  serialized_start=2058,
  serialized_end=2158,
)


_QUERYRESULTBATCH = _descriptor.Descriptor(
  name='QueryResultBatch',
  full_name='google.datastore.v1.QueryResultBatch',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='skipped_results', full_name='google.datastore.v1.QueryResultBatch.skipped_results', index=0,
      number=6, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='skipped_cursor', full_name='google.datastore.v1.QueryResultBatch.skipped_cursor', index=1,
      number=3, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='entity_result_type', full_name='google.datastore.v1.QueryResultBatch.entity_result_type', index=2,
      number=1, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='entity_results', full_name='google.datastore.v1.QueryResultBatch.entity_results', index=3,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='end_cursor', full_name='google.datastore.v1.QueryResultBatch.end_cursor', index=4,
      number=4, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='more_results', full_name='google.datastore.v1.QueryResultBatch.more_results', index=5,
      number=5, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='snapshot_version', full_name='google.datastore.v1.QueryResultBatch.snapshot_version', index=6,
      number=7, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _QUERYRESULTBATCH_MORERESULTSTYPE,
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2161,
  serialized_end=2639,
)

_ENTITYRESULT.fields_by_name['entity'].message_type = google_dot_cloud_dot_datastore__v1_dot_proto_dot_entity__pb2._ENTITY
_ENTITYRESULT_RESULTTYPE.containing_type = _ENTITYRESULT
_QUERY.fields_by_name['projection'].message_type = _PROJECTION
_QUERY.fields_by_name['kind'].message_type = _KINDEXPRESSION
_QUERY.fields_by_name['filter'].message_type = _FILTER
_QUERY.fields_by_name['order'].message_type = _PROPERTYORDER
_QUERY.fields_by_name['distinct_on'].message_type = _PROPERTYREFERENCE
_QUERY.fields_by_name['limit'].message_type = google_dot_protobuf_dot_wrappers__pb2._INT32VALUE
_PROJECTION.fields_by_name['property'].message_type = _PROPERTYREFERENCE
_PROPERTYORDER.fields_by_name['property'].message_type = _PROPERTYREFERENCE
_PROPERTYORDER.fields_by_name['direction'].enum_type = _PROPERTYORDER_DIRECTION
_PROPERTYORDER_DIRECTION.containing_type = _PROPERTYORDER
_FILTER.fields_by_name['composite_filter'].message_type = _COMPOSITEFILTER
_FILTER.fields_by_name['property_filter'].message_type = _PROPERTYFILTER
_FILTER.oneofs_by_name['filter_type'].fields.append(
  _FILTER.fields_by_name['composite_filter'])
_FILTER.fields_by_name['composite_filter'].containing_oneof = _FILTER.oneofs_by_name['filter_type']
_FILTER.oneofs_by_name['filter_type'].fields.append(
  _FILTER.fields_by_name['property_filter'])
_FILTER.fields_by_name['property_filter'].containing_oneof = _FILTER.oneofs_by_name['filter_type']
_COMPOSITEFILTER.fields_by_name['op'].enum_type = _COMPOSITEFILTER_OPERATOR
_COMPOSITEFILTER.fields_by_name['filters'].message_type = _FILTER
_COMPOSITEFILTER_OPERATOR.containing_type = _COMPOSITEFILTER
_PROPERTYFILTER.fields_by_name['property'].message_type = _PROPERTYREFERENCE
_PROPERTYFILTER.fields_by_name['op'].enum_type = _PROPERTYFILTER_OPERATOR
_PROPERTYFILTER.fields_by_name['value'].message_type = google_dot_cloud_dot_datastore__v1_dot_proto_dot_entity__pb2._VALUE
_PROPERTYFILTER_OPERATOR.containing_type = _PROPERTYFILTER
_GQLQUERY_NAMEDBINDINGSENTRY.fields_by_name['value'].message_type = _GQLQUERYPARAMETER
_GQLQUERY_NAMEDBINDINGSENTRY.containing_type = _GQLQUERY
_GQLQUERY.fields_by_name['named_bindings'].message_type = _GQLQUERY_NAMEDBINDINGSENTRY
_GQLQUERY.fields_by_name['positional_bindings'].message_type = _GQLQUERYPARAMETER
_GQLQUERYPARAMETER.fields_by_name['value'].message_type = google_dot_cloud_dot_datastore__v1_dot_proto_dot_entity__pb2._VALUE
_GQLQUERYPARAMETER.oneofs_by_name['parameter_type'].fields.append(
  _GQLQUERYPARAMETER.fields_by_name['value'])
_GQLQUERYPARAMETER.fields_by_name['value'].containing_oneof = _GQLQUERYPARAMETER.oneofs_by_name['parameter_type']
_GQLQUERYPARAMETER.oneofs_by_name['parameter_type'].fields.append(
  _GQLQUERYPARAMETER.fields_by_name['cursor'])
_GQLQUERYPARAMETER.fields_by_name['cursor'].containing_oneof = _GQLQUERYPARAMETER.oneofs_by_name['parameter_type']
_QUERYRESULTBATCH.fields_by_name['entity_result_type'].enum_type = _ENTITYRESULT_RESULTTYPE
_QUERYRESULTBATCH.fields_by_name['entity_results'].message_type = _ENTITYRESULT
_QUERYRESULTBATCH.fields_by_name['more_results'].enum_type = _QUERYRESULTBATCH_MORERESULTSTYPE
_QUERYRESULTBATCH_MORERESULTSTYPE.containing_type = _QUERYRESULTBATCH
DESCRIPTOR.message_types_by_name['EntityResult'] = _ENTITYRESULT
DESCRIPTOR.message_types_by_name['Query'] = _QUERY
DESCRIPTOR.message_types_by_name['KindExpression'] = _KINDEXPRESSION
DESCRIPTOR.message_types_by_name['PropertyReference'] = _PROPERTYREFERENCE
DESCRIPTOR.message_types_by_name['Projection'] = _PROJECTION
DESCRIPTOR.message_types_by_name['PropertyOrder'] = _PROPERTYORDER
DESCRIPTOR.message_types_by_name['Filter'] = _FILTER
DESCRIPTOR.message_types_by_name['CompositeFilter'] = _COMPOSITEFILTER
DESCRIPTOR.message_types_by_name['PropertyFilter'] = _PROPERTYFILTER
DESCRIPTOR.message_types_by_name['GqlQuery'] = _GQLQUERY
DESCRIPTOR.message_types_by_name['GqlQueryParameter'] = _GQLQUERYPARAMETER
DESCRIPTOR.message_types_by_name['QueryResultBatch'] = _QUERYRESULTBATCH
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

EntityResult = _reflection.GeneratedProtocolMessageType('EntityResult', (_message.Message,), dict(
  DESCRIPTOR = _ENTITYRESULT,
  __module__ = 'google.cloud.datastore_v1.proto.query_pb2'
  ,
  __doc__ = """The result of fetching an entity from Datastore.
  
  
  Attributes:
      entity:
          The resulting entity.
      version:
          The version of the entity, a strictly positive number that
          monotonically increases with changes to the entity.  This
          field is set for [``FULL``\
          ][google.datastore.v1.EntityResult.ResultType.FULL] entity
          results.  For
          [missing][google.datastore.v1.LookupResponse.missing] entities
          in ``LookupResponse``, this is the version of the snapshot
          that was used to look up the entity, and it is always set
          except for eventually consistent reads.
      cursor:
          A cursor that points to the position after the result entity.
          Set only when the ``EntityResult`` is part of a
          ``QueryResultBatch`` message.
  """,
  # @@protoc_insertion_point(class_scope:google.datastore.v1.EntityResult)
  ))
_sym_db.RegisterMessage(EntityResult)

Query = _reflection.GeneratedProtocolMessageType('Query', (_message.Message,), dict(
  DESCRIPTOR = _QUERY,
  __module__ = 'google.cloud.datastore_v1.proto.query_pb2'
  ,
  __doc__ = """A query for entities.
  
  
  Attributes:
      projection:
          The projection to return. Defaults to returning all
          properties.
      kind:
          The kinds to query (if empty, returns entities of all kinds).
          Currently at most 1 kind may be specified.
      filter:
          The filter to apply.
      order:
          The order to apply to the query results (if empty, order is
          unspecified).
      distinct_on:
          The properties to make distinct. The query results will
          contain the first result for each distinct combination of
          values for the given properties (if empty, all results are
          returned).
      start_cursor:
          A starting point for the query results. Query cursors are
          returned in query result batches and `can only be used to
          continue the same query <https://cloud.google.com/datastore/do
          cs/concepts/queries#cursors_limits_and_offsets>`__.
      end_cursor:
          An ending point for the query results. Query cursors are
          returned in query result batches and `can only be used to
          limit the same query <https://cloud.google.com/datastore/docs/
          concepts/queries#cursors_limits_and_offsets>`__.
      offset:
          The number of results to skip. Applies before limit, but after
          all other constraints. Optional. Must be >= 0 if specified.
      limit:
          The maximum number of results to return. Applies after all
          other constraints. Optional. Unspecified is interpreted as no
          limit. Must be >= 0 if specified.
  """,
  # @@protoc_insertion_point(class_scope:google.datastore.v1.Query)
  ))
_sym_db.RegisterMessage(Query)

KindExpression = _reflection.GeneratedProtocolMessageType('KindExpression', (_message.Message,), dict(
  DESCRIPTOR = _KINDEXPRESSION,
  __module__ = 'google.cloud.datastore_v1.proto.query_pb2'
  ,
  __doc__ = """A representation of a kind.
  
  
  Attributes:
      name:
          The name of the kind.
  """,
  # @@protoc_insertion_point(class_scope:google.datastore.v1.KindExpression)
  ))
_sym_db.RegisterMessage(KindExpression)

PropertyReference = _reflection.GeneratedProtocolMessageType('PropertyReference', (_message.Message,), dict(
  DESCRIPTOR = _PROPERTYREFERENCE,
  __module__ = 'google.cloud.datastore_v1.proto.query_pb2'
  ,
  __doc__ = """A reference to a property relative to the kind expressions.
  
  
  Attributes:
      name:
          The name of the property. If name includes "."s, it may be
          interpreted as a property name path.
  """,
  # @@protoc_insertion_point(class_scope:google.datastore.v1.PropertyReference)
  ))
_sym_db.RegisterMessage(PropertyReference)

Projection = _reflection.GeneratedProtocolMessageType('Projection', (_message.Message,), dict(
  DESCRIPTOR = _PROJECTION,
  __module__ = 'google.cloud.datastore_v1.proto.query_pb2'
  ,
  __doc__ = """A representation of a property in a projection.
  
  
  Attributes:
      property:
          The property to project.
  """,
  # @@protoc_insertion_point(class_scope:google.datastore.v1.Projection)
  ))
_sym_db.RegisterMessage(Projection)

PropertyOrder = _reflection.GeneratedProtocolMessageType('PropertyOrder', (_message.Message,), dict(
  DESCRIPTOR = _PROPERTYORDER,
  __module__ = 'google.cloud.datastore_v1.proto.query_pb2'
  ,
  __doc__ = """The desired order for a specific property.
  
  
  Attributes:
      property:
          The property to order by.
      direction:
          The direction to order by. Defaults to ``ASCENDING``.
  """,
  # @@protoc_insertion_point(class_scope:google.datastore.v1.PropertyOrder)
  ))
_sym_db.RegisterMessage(PropertyOrder)

Filter = _reflection.GeneratedProtocolMessageType('Filter', (_message.Message,), dict(
  DESCRIPTOR = _FILTER,
  __module__ = 'google.cloud.datastore_v1.proto.query_pb2'
  ,
  __doc__ = """A holder for any type of filter.
  
  
  Attributes:
      filter_type:
          The type of filter.
      composite_filter:
          A composite filter.
      property_filter:
          A filter on a property.
  """,
  # @@protoc_insertion_point(class_scope:google.datastore.v1.Filter)
  ))
_sym_db.RegisterMessage(Filter)

CompositeFilter = _reflection.GeneratedProtocolMessageType('CompositeFilter', (_message.Message,), dict(
  DESCRIPTOR = _COMPOSITEFILTER,
  __module__ = 'google.cloud.datastore_v1.proto.query_pb2'
  ,
  __doc__ = """A filter that merges multiple other filters using the given operator.
  
  
  Attributes:
      op:
          The operator for combining multiple filters.
      filters:
          The list of filters to combine. Must contain at least one
          filter.
  """,
  # @@protoc_insertion_point(class_scope:google.datastore.v1.CompositeFilter)
  ))
_sym_db.RegisterMessage(CompositeFilter)

PropertyFilter = _reflection.GeneratedProtocolMessageType('PropertyFilter', (_message.Message,), dict(
  DESCRIPTOR = _PROPERTYFILTER,
  __module__ = 'google.cloud.datastore_v1.proto.query_pb2'
  ,
  __doc__ = """A filter on a specific property.
  
  
  Attributes:
      property:
          The property to filter by.
      op:
          The operator to filter by.
      value:
          The value to compare the property to.
  """,
  # @@protoc_insertion_point(class_scope:google.datastore.v1.PropertyFilter)
  ))
_sym_db.RegisterMessage(PropertyFilter)

GqlQuery = _reflection.GeneratedProtocolMessageType('GqlQuery', (_message.Message,), dict(

  NamedBindingsEntry = _reflection.GeneratedProtocolMessageType('NamedBindingsEntry', (_message.Message,), dict(
    DESCRIPTOR = _GQLQUERY_NAMEDBINDINGSENTRY,
    __module__ = 'google.cloud.datastore_v1.proto.query_pb2'
    # @@protoc_insertion_point(class_scope:google.datastore.v1.GqlQuery.NamedBindingsEntry)
    ))
  ,
  DESCRIPTOR = _GQLQUERY,
  __module__ = 'google.cloud.datastore_v1.proto.query_pb2'
  ,
  __doc__ = """A `GQL
  query <https://cloud.google.com/datastore/docs/apis/gql/gql_reference>`__.
  
  
  Attributes:
      query_string:
          A string of the format described `here <https://cloud.google.c
          om/datastore/docs/apis/gql/gql_reference>`__.
      allow_literals:
          When false, the query string must not contain any literals and
          instead must bind all values. For example, ``SELECT * FROM
          Kind WHERE a = 'string literal'`` is not allowed, while
          ``SELECT * FROM Kind WHERE a = @value`` is.
      named_bindings:
          For each non-reserved named binding site in the query string,
          there must be a named parameter with that name, but not
          necessarily the inverse.  Key must match regex ``[A-Za-
          z_$][A-Za-z_$0-9]*``, must not match regex ``__.*__``, and
          must not be ``""``.
      positional_bindings:
          Numbered binding site @1 references the first numbered
          parameter, effectively using 1-based indexing, rather than the
          usual 0.  For each binding site numbered i in
          ``query_string``, there must be an i-th numbered parameter.
          The inverse must also be true.
  """,
  # @@protoc_insertion_point(class_scope:google.datastore.v1.GqlQuery)
  ))
_sym_db.RegisterMessage(GqlQuery)
_sym_db.RegisterMessage(GqlQuery.NamedBindingsEntry)

GqlQueryParameter = _reflection.GeneratedProtocolMessageType('GqlQueryParameter', (_message.Message,), dict(
  DESCRIPTOR = _GQLQUERYPARAMETER,
  __module__ = 'google.cloud.datastore_v1.proto.query_pb2'
  ,
  __doc__ = """A binding parameter for a GQL query.
  
  
  Attributes:
      parameter_type:
          The type of parameter.
      value:
          A value parameter.
      cursor:
          A query cursor. Query cursors are returned in query result
          batches.
  """,
  # @@protoc_insertion_point(class_scope:google.datastore.v1.GqlQueryParameter)
  ))
_sym_db.RegisterMessage(GqlQueryParameter)

QueryResultBatch = _reflection.GeneratedProtocolMessageType('QueryResultBatch', (_message.Message,), dict(
  DESCRIPTOR = _QUERYRESULTBATCH,
  __module__ = 'google.cloud.datastore_v1.proto.query_pb2'
  ,
  __doc__ = """A batch of results produced by a query.
  
  
  Attributes:
      skipped_results:
          The number of results skipped, typically because of an offset.
      skipped_cursor:
          A cursor that points to the position after the last skipped
          result. Will be set when ``skipped_results`` != 0.
      entity_result_type:
          The result type for every entity in ``entity_results``.
      entity_results:
          The results for this batch.
      end_cursor:
          A cursor that points to the position after the last result in
          the batch.
      more_results:
          The state of the query after the current batch.
      snapshot_version:
          The version number of the snapshot this batch was returned
          from. This applies to the range of results from the query's
          ``start_cursor`` (or the beginning of the query if no cursor
          was given) to this batch's ``end_cursor`` (not the query's
          ``end_cursor``).  In a single transaction, subsequent query
          result batches for the same query can have a greater snapshot
          version number. Each batch's snapshot version is valid for all
          preceding batches. The value will be zero for eventually
          consistent queries.
  """,
  # @@protoc_insertion_point(class_scope:google.datastore.v1.QueryResultBatch)
  ))
_sym_db.RegisterMessage(QueryResultBatch)


DESCRIPTOR.has_options = True
DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\027com.google.datastore.v1B\nQueryProtoP\001Z<google.golang.org/genproto/googleapis/datastore/v1;datastore\252\002\031Google.Cloud.Datastore.V1'))
_GQLQUERY_NAMEDBINDINGSENTRY.has_options = True
_GQLQUERY_NAMEDBINDINGSENTRY._options = _descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('8\001'))
try:
  # THESE ELEMENTS WILL BE DEPRECATED.
  # Please use the generated *_pb2_grpc.py files instead.
  import grpc
  from grpc.beta import implementations as beta_implementations
  from grpc.beta import interfaces as beta_interfaces
  from grpc.framework.common import cardinality
  from grpc.framework.interfaces.face import utilities as face_utilities
except ImportError:
  pass
# @@protoc_insertion_point(module_scope)
