From d08488782867cfb11948b385453aa85f2aad8249 Mon Sep 17 00:00:00 2001 From: Aaron Craelius Date: Mon, 13 Jun 2022 16:45:16 -0400 Subject: [PATCH] feat(orm): specify generic gRPC query service (#11791) ## Description Ref #11774 This proposes a generic gRPC query service that uses direct index access and can basically be implemented as a thin layer directly on top of `ormtable.Table`. There is relatively little code required to implement this but it can potentially provide a lot of value as a way to expose queries to basically everything that's using the ORM without needing to implement any custom gRPC queries. A version of this which is type safe is also proposed in #11774 but that would require additional codegen of .proto files. #11774 also proposes a logical query layer instead of direct index access but that's substantially more code to do even naively and an optimized version would take more effort. --- ### Author Checklist *All items are required. Please add a note to the item if the item is not applicable and please add links to any relevant follow up issues.* I have... - [ ] included the correct [type prefix](https://github.com/commitizen/conventional-commit-types/blob/v3.0.0/index.json) in the PR title - [ ] added `!` to the type prefix if API or client breaking change - [ ] targeted the correct branch (see [PR Targeting](https://github.com/cosmos/cosmos-sdk/blob/main/CONTRIBUTING.md#pr-targeting)) - [ ] provided a link to the relevant issue or specification - [ ] followed the guidelines for [building modules](https://github.com/cosmos/cosmos-sdk/blob/main/docs/building-modules) - [ ] included the necessary unit and integration [tests](https://github.com/cosmos/cosmos-sdk/blob/main/CONTRIBUTING.md#testing) - [ ] added a changelog entry to `CHANGELOG.md` - [ ] included comments for [documenting Go code](https://blog.golang.org/godoc) - [ ] updated the relevant documentation or specification - [ ] reviewed "Files changed" and left comments if necessary - [ ] confirmed all CI checks have passed ### Reviewers Checklist *All items are required. Please add a note if the item is not applicable and please add your handle next to the items reviewed if you only reviewed selected items.* I have... - [ ] confirmed the correct [type prefix](https://github.com/commitizen/conventional-commit-types/blob/v3.0.0/index.json) in the PR title - [ ] confirmed `!` in the type prefix if API or client breaking change - [ ] confirmed all author checklist items have been addressed - [ ] reviewed state machine logic - [ ] reviewed API design and naming - [ ] reviewed documentation is accurate - [ ] reviewed tests and test coverage - [ ] manually tested (if applicable) --- api/cosmos/orm/query/v1alpha1/query.pulsar.go | 5376 +++++++++++++++++ .../orm/query/v1alpha1/query_grpc.pb.go | 145 + proto/cosmos/orm/query/v1alpha1/query.proto | 131 + 3 files changed, 5652 insertions(+) create mode 100644 api/cosmos/orm/query/v1alpha1/query.pulsar.go create mode 100644 api/cosmos/orm/query/v1alpha1/query_grpc.pb.go create mode 100644 proto/cosmos/orm/query/v1alpha1/query.proto diff --git a/api/cosmos/orm/query/v1alpha1/query.pulsar.go b/api/cosmos/orm/query/v1alpha1/query.pulsar.go new file mode 100644 index 0000000000..8454ab6b73 --- /dev/null +++ b/api/cosmos/orm/query/v1alpha1/query.pulsar.go @@ -0,0 +1,5376 @@ +// Code generated by protoc-gen-go-pulsar. DO NOT EDIT. +package queryv1alpha1 + +import ( + fmt "fmt" + io "io" + reflect "reflect" + sync "sync" + + v1beta1 "cosmossdk.io/api/cosmos/base/query/v1beta1" + runtime "github.com/cosmos/cosmos-proto/runtime" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoiface "google.golang.org/protobuf/runtime/protoiface" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + anypb "google.golang.org/protobuf/types/known/anypb" + durationpb "google.golang.org/protobuf/types/known/durationpb" + timestamppb "google.golang.org/protobuf/types/known/timestamppb" +) + +var _ protoreflect.List = (*_GetRequest_3_list)(nil) + +type _GetRequest_3_list struct { + list *[]*IndexValue +} + +func (x *_GetRequest_3_list) Len() int { + if x.list == nil { + return 0 + } + return len(*x.list) +} + +func (x *_GetRequest_3_list) Get(i int) protoreflect.Value { + return protoreflect.ValueOfMessage((*x.list)[i].ProtoReflect()) +} + +func (x *_GetRequest_3_list) Set(i int, value protoreflect.Value) { + valueUnwrapped := value.Message() + concreteValue := valueUnwrapped.Interface().(*IndexValue) + (*x.list)[i] = concreteValue +} + +func (x *_GetRequest_3_list) Append(value protoreflect.Value) { + valueUnwrapped := value.Message() + concreteValue := valueUnwrapped.Interface().(*IndexValue) + *x.list = append(*x.list, concreteValue) +} + +func (x *_GetRequest_3_list) AppendMutable() protoreflect.Value { + v := new(IndexValue) + *x.list = append(*x.list, v) + return protoreflect.ValueOfMessage(v.ProtoReflect()) +} + +func (x *_GetRequest_3_list) Truncate(n int) { + for i := n; i < len(*x.list); i++ { + (*x.list)[i] = nil + } + *x.list = (*x.list)[:n] +} + +func (x *_GetRequest_3_list) NewElement() protoreflect.Value { + v := new(IndexValue) + return protoreflect.ValueOfMessage(v.ProtoReflect()) +} + +func (x *_GetRequest_3_list) IsValid() bool { + return x.list != nil +} + +var ( + md_GetRequest protoreflect.MessageDescriptor + fd_GetRequest_message_name protoreflect.FieldDescriptor + fd_GetRequest_index protoreflect.FieldDescriptor + fd_GetRequest_values protoreflect.FieldDescriptor +) + +func init() { + file_cosmos_orm_query_v1alpha1_query_proto_init() + md_GetRequest = File_cosmos_orm_query_v1alpha1_query_proto.Messages().ByName("GetRequest") + fd_GetRequest_message_name = md_GetRequest.Fields().ByName("message_name") + fd_GetRequest_index = md_GetRequest.Fields().ByName("index") + fd_GetRequest_values = md_GetRequest.Fields().ByName("values") +} + +var _ protoreflect.Message = (*fastReflection_GetRequest)(nil) + +type fastReflection_GetRequest GetRequest + +func (x *GetRequest) ProtoReflect() protoreflect.Message { + return (*fastReflection_GetRequest)(x) +} + +func (x *GetRequest) slowProtoReflect() protoreflect.Message { + mi := &file_cosmos_orm_query_v1alpha1_query_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +var _fastReflection_GetRequest_messageType fastReflection_GetRequest_messageType +var _ protoreflect.MessageType = fastReflection_GetRequest_messageType{} + +type fastReflection_GetRequest_messageType struct{} + +func (x fastReflection_GetRequest_messageType) Zero() protoreflect.Message { + return (*fastReflection_GetRequest)(nil) +} +func (x fastReflection_GetRequest_messageType) New() protoreflect.Message { + return new(fastReflection_GetRequest) +} +func (x fastReflection_GetRequest_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_GetRequest +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_GetRequest) Descriptor() protoreflect.MessageDescriptor { + return md_GetRequest +} + +// Type returns the message type, which encapsulates both Go and protobuf +// type information. If the Go type information is not needed, +// it is recommended that the message descriptor be used instead. +func (x *fastReflection_GetRequest) Type() protoreflect.MessageType { + return _fastReflection_GetRequest_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_GetRequest) New() protoreflect.Message { + return new(fastReflection_GetRequest) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_GetRequest) Interface() protoreflect.ProtoMessage { + return (*GetRequest)(x) +} + +// Range iterates over every populated field in an undefined order, +// calling f for each field descriptor and value encountered. +// Range returns immediately if f returns false. +// While iterating, mutating operations may only be performed +// on the current field descriptor. +func (x *fastReflection_GetRequest) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.MessageName != "" { + value := protoreflect.ValueOfString(x.MessageName) + if !f(fd_GetRequest_message_name, value) { + return + } + } + if x.Index != "" { + value := protoreflect.ValueOfString(x.Index) + if !f(fd_GetRequest_index, value) { + return + } + } + if len(x.Values) != 0 { + value := protoreflect.ValueOfList(&_GetRequest_3_list{list: &x.Values}) + if !f(fd_GetRequest_values, value) { + return + } + } +} + +// Has reports whether a field is populated. +// +// Some fields have the property of nullability where it is possible to +// distinguish between the default value of a field and whether the field +// was explicitly populated with the default value. Singular message fields, +// member fields of a oneof, and proto2 scalar fields are nullable. Such +// fields are populated only if explicitly set. +// +// In other cases (aside from the nullable cases above), +// a proto3 scalar field is populated if it contains a non-zero value, and +// a repeated field is populated if it is non-empty. +func (x *fastReflection_GetRequest) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.GetRequest.message_name": + return x.MessageName != "" + case "cosmos.orm.query.v1alpha1.GetRequest.index": + return x.Index != "" + case "cosmos.orm.query.v1alpha1.GetRequest.values": + return len(x.Values) != 0 + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.GetRequest")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.GetRequest does not contain field %s", fd.FullName())) + } +} + +// Clear clears the field such that a subsequent Has call reports false. +// +// Clearing an extension field clears both the extension type and value +// associated with the given field number. +// +// Clear is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_GetRequest) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.GetRequest.message_name": + x.MessageName = "" + case "cosmos.orm.query.v1alpha1.GetRequest.index": + x.Index = "" + case "cosmos.orm.query.v1alpha1.GetRequest.values": + x.Values = nil + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.GetRequest")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.GetRequest does not contain field %s", fd.FullName())) + } +} + +// Get retrieves the value for a field. +// +// For unpopulated scalars, it returns the default value, where +// the default value of a bytes scalar is guaranteed to be a copy. +// For unpopulated composite types, it returns an empty, read-only view +// of the value; to obtain a mutable reference, use Mutable. +func (x *fastReflection_GetRequest) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "cosmos.orm.query.v1alpha1.GetRequest.message_name": + value := x.MessageName + return protoreflect.ValueOfString(value) + case "cosmos.orm.query.v1alpha1.GetRequest.index": + value := x.Index + return protoreflect.ValueOfString(value) + case "cosmos.orm.query.v1alpha1.GetRequest.values": + if len(x.Values) == 0 { + return protoreflect.ValueOfList(&_GetRequest_3_list{}) + } + listValue := &_GetRequest_3_list{list: &x.Values} + return protoreflect.ValueOfList(listValue) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.GetRequest")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.GetRequest does not contain field %s", descriptor.FullName())) + } +} + +// Set stores the value for a field. +// +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType. +// When setting a composite type, it is unspecified whether the stored value +// aliases the source's memory in any way. If the composite value is an +// empty, read-only value, then it panics. +// +// Set is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_GetRequest) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.GetRequest.message_name": + x.MessageName = value.Interface().(string) + case "cosmos.orm.query.v1alpha1.GetRequest.index": + x.Index = value.Interface().(string) + case "cosmos.orm.query.v1alpha1.GetRequest.values": + lv := value.List() + clv := lv.(*_GetRequest_3_list) + x.Values = *clv.list + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.GetRequest")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.GetRequest does not contain field %s", fd.FullName())) + } +} + +// Mutable returns a mutable reference to a composite type. +// +// If the field is unpopulated, it may allocate a composite value. +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType +// if not already stored. +// It panics if the field does not contain a composite type. +// +// Mutable is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_GetRequest) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.GetRequest.values": + if x.Values == nil { + x.Values = []*IndexValue{} + } + value := &_GetRequest_3_list{list: &x.Values} + return protoreflect.ValueOfList(value) + case "cosmos.orm.query.v1alpha1.GetRequest.message_name": + panic(fmt.Errorf("field message_name of message cosmos.orm.query.v1alpha1.GetRequest is not mutable")) + case "cosmos.orm.query.v1alpha1.GetRequest.index": + panic(fmt.Errorf("field index of message cosmos.orm.query.v1alpha1.GetRequest is not mutable")) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.GetRequest")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.GetRequest does not contain field %s", fd.FullName())) + } +} + +// NewField returns a new value that is assignable to the field +// for the given descriptor. For scalars, this returns the default value. +// For lists, maps, and messages, this returns a new, empty, mutable value. +func (x *fastReflection_GetRequest) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.GetRequest.message_name": + return protoreflect.ValueOfString("") + case "cosmos.orm.query.v1alpha1.GetRequest.index": + return protoreflect.ValueOfString("") + case "cosmos.orm.query.v1alpha1.GetRequest.values": + list := []*IndexValue{} + return protoreflect.ValueOfList(&_GetRequest_3_list{list: &list}) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.GetRequest")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.GetRequest does not contain field %s", fd.FullName())) + } +} + +// WhichOneof reports which field within the oneof is populated, +// returning nil if none are populated. +// It panics if the oneof descriptor does not belong to this message. +func (x *fastReflection_GetRequest) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in cosmos.orm.query.v1alpha1.GetRequest", d.FullName())) + } + panic("unreachable") +} + +// GetUnknown retrieves the entire list of unknown fields. +// The caller may only mutate the contents of the RawFields +// if the mutated bytes are stored back into the message with SetUnknown. +func (x *fastReflection_GetRequest) GetUnknown() protoreflect.RawFields { + return x.unknownFields +} + +// SetUnknown stores an entire list of unknown fields. +// The raw fields must be syntactically valid according to the wire format. +// An implementation may panic if this is not the case. +// Once stored, the caller must not mutate the content of the RawFields. +// An empty RawFields may be passed to clear the fields. +// +// SetUnknown is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_GetRequest) SetUnknown(fields protoreflect.RawFields) { + x.unknownFields = fields +} + +// IsValid reports whether the message is valid. +// +// An invalid message is an empty, read-only value. +// +// An invalid message often corresponds to a nil pointer of the concrete +// message type, but the details are implementation dependent. +// Validity is not part of the protobuf data model, and may not +// be preserved in marshaling or other operations. +func (x *fastReflection_GetRequest) IsValid() bool { + return x != nil +} + +// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations. +// This method may return nil. +// +// The returned methods type is identical to +// "google.golang.org/protobuf/runtime/protoiface".Methods. +// Consult the protoiface package documentation for details. +func (x *fastReflection_GetRequest) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*GetRequest) + if x == nil { + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: 0, + } + } + options := runtime.SizeInputToOptions(input) + _ = options + var n int + var l int + _ = l + l = len(x.MessageName) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.Index) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + if len(x.Values) > 0 { + for _, e := range x.Values { + l = options.Size(e) + n += 1 + l + runtime.Sov(uint64(l)) + } + } + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*GetRequest) + if x == nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + options := runtime.MarshalInputToOptions(input) + _ = options + size := options.Size(x) + dAtA := make([]byte, size) + i := len(dAtA) + _ = i + var l int + _ = l + if x.unknownFields != nil { + i -= len(x.unknownFields) + copy(dAtA[i:], x.unknownFields) + } + if len(x.Values) > 0 { + for iNdEx := len(x.Values) - 1; iNdEx >= 0; iNdEx-- { + encoded, err := options.Marshal(x.Values[iNdEx]) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0x1a + } + } + if len(x.Index) > 0 { + i -= len(x.Index) + copy(dAtA[i:], x.Index) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Index))) + i-- + dAtA[i] = 0x12 + } + if len(x.MessageName) > 0 { + i -= len(x.MessageName) + copy(dAtA[i:], x.MessageName) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.MessageName))) + i-- + dAtA[i] = 0xa + } + if input.Buf != nil { + input.Buf = append(input.Buf, dAtA...) + } else { + input.Buf = dAtA + } + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { + x := input.Message.Interface().(*GetRequest) + if x == nil { + return protoiface.UnmarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Flags: input.Flags, + }, nil + } + options := runtime.UnmarshalInputToOptions(input) + _ = options + dAtA := input.Buf + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: GetRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: GetRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field MessageName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.MessageName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Index", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.Index = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Values", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.Values = append(x.Values, &IndexValue{}) + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Values[len(x.Values)-1]); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + +var ( + md_GetResponse protoreflect.MessageDescriptor + fd_GetResponse_result protoreflect.FieldDescriptor +) + +func init() { + file_cosmos_orm_query_v1alpha1_query_proto_init() + md_GetResponse = File_cosmos_orm_query_v1alpha1_query_proto.Messages().ByName("GetResponse") + fd_GetResponse_result = md_GetResponse.Fields().ByName("result") +} + +var _ protoreflect.Message = (*fastReflection_GetResponse)(nil) + +type fastReflection_GetResponse GetResponse + +func (x *GetResponse) ProtoReflect() protoreflect.Message { + return (*fastReflection_GetResponse)(x) +} + +func (x *GetResponse) slowProtoReflect() protoreflect.Message { + mi := &file_cosmos_orm_query_v1alpha1_query_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +var _fastReflection_GetResponse_messageType fastReflection_GetResponse_messageType +var _ protoreflect.MessageType = fastReflection_GetResponse_messageType{} + +type fastReflection_GetResponse_messageType struct{} + +func (x fastReflection_GetResponse_messageType) Zero() protoreflect.Message { + return (*fastReflection_GetResponse)(nil) +} +func (x fastReflection_GetResponse_messageType) New() protoreflect.Message { + return new(fastReflection_GetResponse) +} +func (x fastReflection_GetResponse_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_GetResponse +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_GetResponse) Descriptor() protoreflect.MessageDescriptor { + return md_GetResponse +} + +// Type returns the message type, which encapsulates both Go and protobuf +// type information. If the Go type information is not needed, +// it is recommended that the message descriptor be used instead. +func (x *fastReflection_GetResponse) Type() protoreflect.MessageType { + return _fastReflection_GetResponse_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_GetResponse) New() protoreflect.Message { + return new(fastReflection_GetResponse) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_GetResponse) Interface() protoreflect.ProtoMessage { + return (*GetResponse)(x) +} + +// Range iterates over every populated field in an undefined order, +// calling f for each field descriptor and value encountered. +// Range returns immediately if f returns false. +// While iterating, mutating operations may only be performed +// on the current field descriptor. +func (x *fastReflection_GetResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.Result != nil { + value := protoreflect.ValueOfMessage(x.Result.ProtoReflect()) + if !f(fd_GetResponse_result, value) { + return + } + } +} + +// Has reports whether a field is populated. +// +// Some fields have the property of nullability where it is possible to +// distinguish between the default value of a field and whether the field +// was explicitly populated with the default value. Singular message fields, +// member fields of a oneof, and proto2 scalar fields are nullable. Such +// fields are populated only if explicitly set. +// +// In other cases (aside from the nullable cases above), +// a proto3 scalar field is populated if it contains a non-zero value, and +// a repeated field is populated if it is non-empty. +func (x *fastReflection_GetResponse) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.GetResponse.result": + return x.Result != nil + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.GetResponse")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.GetResponse does not contain field %s", fd.FullName())) + } +} + +// Clear clears the field such that a subsequent Has call reports false. +// +// Clearing an extension field clears both the extension type and value +// associated with the given field number. +// +// Clear is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_GetResponse) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.GetResponse.result": + x.Result = nil + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.GetResponse")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.GetResponse does not contain field %s", fd.FullName())) + } +} + +// Get retrieves the value for a field. +// +// For unpopulated scalars, it returns the default value, where +// the default value of a bytes scalar is guaranteed to be a copy. +// For unpopulated composite types, it returns an empty, read-only view +// of the value; to obtain a mutable reference, use Mutable. +func (x *fastReflection_GetResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "cosmos.orm.query.v1alpha1.GetResponse.result": + value := x.Result + return protoreflect.ValueOfMessage(value.ProtoReflect()) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.GetResponse")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.GetResponse does not contain field %s", descriptor.FullName())) + } +} + +// Set stores the value for a field. +// +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType. +// When setting a composite type, it is unspecified whether the stored value +// aliases the source's memory in any way. If the composite value is an +// empty, read-only value, then it panics. +// +// Set is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_GetResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.GetResponse.result": + x.Result = value.Message().Interface().(*anypb.Any) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.GetResponse")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.GetResponse does not contain field %s", fd.FullName())) + } +} + +// Mutable returns a mutable reference to a composite type. +// +// If the field is unpopulated, it may allocate a composite value. +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType +// if not already stored. +// It panics if the field does not contain a composite type. +// +// Mutable is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_GetResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.GetResponse.result": + if x.Result == nil { + x.Result = new(anypb.Any) + } + return protoreflect.ValueOfMessage(x.Result.ProtoReflect()) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.GetResponse")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.GetResponse does not contain field %s", fd.FullName())) + } +} + +// NewField returns a new value that is assignable to the field +// for the given descriptor. For scalars, this returns the default value. +// For lists, maps, and messages, this returns a new, empty, mutable value. +func (x *fastReflection_GetResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.GetResponse.result": + m := new(anypb.Any) + return protoreflect.ValueOfMessage(m.ProtoReflect()) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.GetResponse")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.GetResponse does not contain field %s", fd.FullName())) + } +} + +// WhichOneof reports which field within the oneof is populated, +// returning nil if none are populated. +// It panics if the oneof descriptor does not belong to this message. +func (x *fastReflection_GetResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in cosmos.orm.query.v1alpha1.GetResponse", d.FullName())) + } + panic("unreachable") +} + +// GetUnknown retrieves the entire list of unknown fields. +// The caller may only mutate the contents of the RawFields +// if the mutated bytes are stored back into the message with SetUnknown. +func (x *fastReflection_GetResponse) GetUnknown() protoreflect.RawFields { + return x.unknownFields +} + +// SetUnknown stores an entire list of unknown fields. +// The raw fields must be syntactically valid according to the wire format. +// An implementation may panic if this is not the case. +// Once stored, the caller must not mutate the content of the RawFields. +// An empty RawFields may be passed to clear the fields. +// +// SetUnknown is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_GetResponse) SetUnknown(fields protoreflect.RawFields) { + x.unknownFields = fields +} + +// IsValid reports whether the message is valid. +// +// An invalid message is an empty, read-only value. +// +// An invalid message often corresponds to a nil pointer of the concrete +// message type, but the details are implementation dependent. +// Validity is not part of the protobuf data model, and may not +// be preserved in marshaling or other operations. +func (x *fastReflection_GetResponse) IsValid() bool { + return x != nil +} + +// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations. +// This method may return nil. +// +// The returned methods type is identical to +// "google.golang.org/protobuf/runtime/protoiface".Methods. +// Consult the protoiface package documentation for details. +func (x *fastReflection_GetResponse) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*GetResponse) + if x == nil { + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: 0, + } + } + options := runtime.SizeInputToOptions(input) + _ = options + var n int + var l int + _ = l + if x.Result != nil { + l = options.Size(x.Result) + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*GetResponse) + if x == nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + options := runtime.MarshalInputToOptions(input) + _ = options + size := options.Size(x) + dAtA := make([]byte, size) + i := len(dAtA) + _ = i + var l int + _ = l + if x.unknownFields != nil { + i -= len(x.unknownFields) + copy(dAtA[i:], x.unknownFields) + } + if x.Result != nil { + encoded, err := options.Marshal(x.Result) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0xa + } + if input.Buf != nil { + input.Buf = append(input.Buf, dAtA...) + } else { + input.Buf = dAtA + } + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { + x := input.Message.Interface().(*GetResponse) + if x == nil { + return protoiface.UnmarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Flags: input.Flags, + }, nil + } + options := runtime.UnmarshalInputToOptions(input) + _ = options + dAtA := input.Buf + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: GetResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: GetResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Result", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if x.Result == nil { + x.Result = &anypb.Any{} + } + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Result); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + +var ( + md_ListRequest protoreflect.MessageDescriptor + fd_ListRequest_message_name protoreflect.FieldDescriptor + fd_ListRequest_index protoreflect.FieldDescriptor + fd_ListRequest_prefix protoreflect.FieldDescriptor + fd_ListRequest_range protoreflect.FieldDescriptor + fd_ListRequest_pagination protoreflect.FieldDescriptor +) + +func init() { + file_cosmos_orm_query_v1alpha1_query_proto_init() + md_ListRequest = File_cosmos_orm_query_v1alpha1_query_proto.Messages().ByName("ListRequest") + fd_ListRequest_message_name = md_ListRequest.Fields().ByName("message_name") + fd_ListRequest_index = md_ListRequest.Fields().ByName("index") + fd_ListRequest_prefix = md_ListRequest.Fields().ByName("prefix") + fd_ListRequest_range = md_ListRequest.Fields().ByName("range") + fd_ListRequest_pagination = md_ListRequest.Fields().ByName("pagination") +} + +var _ protoreflect.Message = (*fastReflection_ListRequest)(nil) + +type fastReflection_ListRequest ListRequest + +func (x *ListRequest) ProtoReflect() protoreflect.Message { + return (*fastReflection_ListRequest)(x) +} + +func (x *ListRequest) slowProtoReflect() protoreflect.Message { + mi := &file_cosmos_orm_query_v1alpha1_query_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +var _fastReflection_ListRequest_messageType fastReflection_ListRequest_messageType +var _ protoreflect.MessageType = fastReflection_ListRequest_messageType{} + +type fastReflection_ListRequest_messageType struct{} + +func (x fastReflection_ListRequest_messageType) Zero() protoreflect.Message { + return (*fastReflection_ListRequest)(nil) +} +func (x fastReflection_ListRequest_messageType) New() protoreflect.Message { + return new(fastReflection_ListRequest) +} +func (x fastReflection_ListRequest_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_ListRequest +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_ListRequest) Descriptor() protoreflect.MessageDescriptor { + return md_ListRequest +} + +// Type returns the message type, which encapsulates both Go and protobuf +// type information. If the Go type information is not needed, +// it is recommended that the message descriptor be used instead. +func (x *fastReflection_ListRequest) Type() protoreflect.MessageType { + return _fastReflection_ListRequest_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_ListRequest) New() protoreflect.Message { + return new(fastReflection_ListRequest) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_ListRequest) Interface() protoreflect.ProtoMessage { + return (*ListRequest)(x) +} + +// Range iterates over every populated field in an undefined order, +// calling f for each field descriptor and value encountered. +// Range returns immediately if f returns false. +// While iterating, mutating operations may only be performed +// on the current field descriptor. +func (x *fastReflection_ListRequest) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.MessageName != "" { + value := protoreflect.ValueOfString(x.MessageName) + if !f(fd_ListRequest_message_name, value) { + return + } + } + if x.Index != "" { + value := protoreflect.ValueOfString(x.Index) + if !f(fd_ListRequest_index, value) { + return + } + } + if x.Query != nil { + switch o := x.Query.(type) { + case *ListRequest_Prefix_: + v := o.Prefix + value := protoreflect.ValueOfMessage(v.ProtoReflect()) + if !f(fd_ListRequest_prefix, value) { + return + } + case *ListRequest_Range_: + v := o.Range_ + value := protoreflect.ValueOfMessage(v.ProtoReflect()) + if !f(fd_ListRequest_range, value) { + return + } + } + } + if x.Pagination != nil { + value := protoreflect.ValueOfMessage(x.Pagination.ProtoReflect()) + if !f(fd_ListRequest_pagination, value) { + return + } + } +} + +// Has reports whether a field is populated. +// +// Some fields have the property of nullability where it is possible to +// distinguish between the default value of a field and whether the field +// was explicitly populated with the default value. Singular message fields, +// member fields of a oneof, and proto2 scalar fields are nullable. Such +// fields are populated only if explicitly set. +// +// In other cases (aside from the nullable cases above), +// a proto3 scalar field is populated if it contains a non-zero value, and +// a repeated field is populated if it is non-empty. +func (x *fastReflection_ListRequest) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.ListRequest.message_name": + return x.MessageName != "" + case "cosmos.orm.query.v1alpha1.ListRequest.index": + return x.Index != "" + case "cosmos.orm.query.v1alpha1.ListRequest.prefix": + if x.Query == nil { + return false + } else if _, ok := x.Query.(*ListRequest_Prefix_); ok { + return true + } else { + return false + } + case "cosmos.orm.query.v1alpha1.ListRequest.range": + if x.Query == nil { + return false + } else if _, ok := x.Query.(*ListRequest_Range_); ok { + return true + } else { + return false + } + case "cosmos.orm.query.v1alpha1.ListRequest.pagination": + return x.Pagination != nil + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.ListRequest")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.ListRequest does not contain field %s", fd.FullName())) + } +} + +// Clear clears the field such that a subsequent Has call reports false. +// +// Clearing an extension field clears both the extension type and value +// associated with the given field number. +// +// Clear is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_ListRequest) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.ListRequest.message_name": + x.MessageName = "" + case "cosmos.orm.query.v1alpha1.ListRequest.index": + x.Index = "" + case "cosmos.orm.query.v1alpha1.ListRequest.prefix": + x.Query = nil + case "cosmos.orm.query.v1alpha1.ListRequest.range": + x.Query = nil + case "cosmos.orm.query.v1alpha1.ListRequest.pagination": + x.Pagination = nil + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.ListRequest")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.ListRequest does not contain field %s", fd.FullName())) + } +} + +// Get retrieves the value for a field. +// +// For unpopulated scalars, it returns the default value, where +// the default value of a bytes scalar is guaranteed to be a copy. +// For unpopulated composite types, it returns an empty, read-only view +// of the value; to obtain a mutable reference, use Mutable. +func (x *fastReflection_ListRequest) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "cosmos.orm.query.v1alpha1.ListRequest.message_name": + value := x.MessageName + return protoreflect.ValueOfString(value) + case "cosmos.orm.query.v1alpha1.ListRequest.index": + value := x.Index + return protoreflect.ValueOfString(value) + case "cosmos.orm.query.v1alpha1.ListRequest.prefix": + if x.Query == nil { + return protoreflect.ValueOfMessage((*ListRequest_Prefix)(nil).ProtoReflect()) + } else if v, ok := x.Query.(*ListRequest_Prefix_); ok { + return protoreflect.ValueOfMessage(v.Prefix.ProtoReflect()) + } else { + return protoreflect.ValueOfMessage((*ListRequest_Prefix)(nil).ProtoReflect()) + } + case "cosmos.orm.query.v1alpha1.ListRequest.range": + if x.Query == nil { + return protoreflect.ValueOfMessage((*ListRequest_Range)(nil).ProtoReflect()) + } else if v, ok := x.Query.(*ListRequest_Range_); ok { + return protoreflect.ValueOfMessage(v.Range_.ProtoReflect()) + } else { + return protoreflect.ValueOfMessage((*ListRequest_Range)(nil).ProtoReflect()) + } + case "cosmos.orm.query.v1alpha1.ListRequest.pagination": + value := x.Pagination + return protoreflect.ValueOfMessage(value.ProtoReflect()) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.ListRequest")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.ListRequest does not contain field %s", descriptor.FullName())) + } +} + +// Set stores the value for a field. +// +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType. +// When setting a composite type, it is unspecified whether the stored value +// aliases the source's memory in any way. If the composite value is an +// empty, read-only value, then it panics. +// +// Set is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_ListRequest) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.ListRequest.message_name": + x.MessageName = value.Interface().(string) + case "cosmos.orm.query.v1alpha1.ListRequest.index": + x.Index = value.Interface().(string) + case "cosmos.orm.query.v1alpha1.ListRequest.prefix": + cv := value.Message().Interface().(*ListRequest_Prefix) + x.Query = &ListRequest_Prefix_{Prefix: cv} + case "cosmos.orm.query.v1alpha1.ListRequest.range": + cv := value.Message().Interface().(*ListRequest_Range) + x.Query = &ListRequest_Range_{Range_: cv} + case "cosmos.orm.query.v1alpha1.ListRequest.pagination": + x.Pagination = value.Message().Interface().(*v1beta1.PageRequest) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.ListRequest")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.ListRequest does not contain field %s", fd.FullName())) + } +} + +// Mutable returns a mutable reference to a composite type. +// +// If the field is unpopulated, it may allocate a composite value. +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType +// if not already stored. +// It panics if the field does not contain a composite type. +// +// Mutable is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_ListRequest) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.ListRequest.prefix": + if x.Query == nil { + value := &ListRequest_Prefix{} + oneofValue := &ListRequest_Prefix_{Prefix: value} + x.Query = oneofValue + return protoreflect.ValueOfMessage(value.ProtoReflect()) + } + switch m := x.Query.(type) { + case *ListRequest_Prefix_: + return protoreflect.ValueOfMessage(m.Prefix.ProtoReflect()) + default: + value := &ListRequest_Prefix{} + oneofValue := &ListRequest_Prefix_{Prefix: value} + x.Query = oneofValue + return protoreflect.ValueOfMessage(value.ProtoReflect()) + } + case "cosmos.orm.query.v1alpha1.ListRequest.range": + if x.Query == nil { + value := &ListRequest_Range{} + oneofValue := &ListRequest_Range_{Range_: value} + x.Query = oneofValue + return protoreflect.ValueOfMessage(value.ProtoReflect()) + } + switch m := x.Query.(type) { + case *ListRequest_Range_: + return protoreflect.ValueOfMessage(m.Range_.ProtoReflect()) + default: + value := &ListRequest_Range{} + oneofValue := &ListRequest_Range_{Range_: value} + x.Query = oneofValue + return protoreflect.ValueOfMessage(value.ProtoReflect()) + } + case "cosmos.orm.query.v1alpha1.ListRequest.pagination": + if x.Pagination == nil { + x.Pagination = new(v1beta1.PageRequest) + } + return protoreflect.ValueOfMessage(x.Pagination.ProtoReflect()) + case "cosmos.orm.query.v1alpha1.ListRequest.message_name": + panic(fmt.Errorf("field message_name of message cosmos.orm.query.v1alpha1.ListRequest is not mutable")) + case "cosmos.orm.query.v1alpha1.ListRequest.index": + panic(fmt.Errorf("field index of message cosmos.orm.query.v1alpha1.ListRequest is not mutable")) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.ListRequest")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.ListRequest does not contain field %s", fd.FullName())) + } +} + +// NewField returns a new value that is assignable to the field +// for the given descriptor. For scalars, this returns the default value. +// For lists, maps, and messages, this returns a new, empty, mutable value. +func (x *fastReflection_ListRequest) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.ListRequest.message_name": + return protoreflect.ValueOfString("") + case "cosmos.orm.query.v1alpha1.ListRequest.index": + return protoreflect.ValueOfString("") + case "cosmos.orm.query.v1alpha1.ListRequest.prefix": + value := &ListRequest_Prefix{} + return protoreflect.ValueOfMessage(value.ProtoReflect()) + case "cosmos.orm.query.v1alpha1.ListRequest.range": + value := &ListRequest_Range{} + return protoreflect.ValueOfMessage(value.ProtoReflect()) + case "cosmos.orm.query.v1alpha1.ListRequest.pagination": + m := new(v1beta1.PageRequest) + return protoreflect.ValueOfMessage(m.ProtoReflect()) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.ListRequest")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.ListRequest does not contain field %s", fd.FullName())) + } +} + +// WhichOneof reports which field within the oneof is populated, +// returning nil if none are populated. +// It panics if the oneof descriptor does not belong to this message. +func (x *fastReflection_ListRequest) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + case "cosmos.orm.query.v1alpha1.ListRequest.query": + if x.Query == nil { + return nil + } + switch x.Query.(type) { + case *ListRequest_Prefix_: + return x.Descriptor().Fields().ByName("prefix") + case *ListRequest_Range_: + return x.Descriptor().Fields().ByName("range") + } + default: + panic(fmt.Errorf("%s is not a oneof field in cosmos.orm.query.v1alpha1.ListRequest", d.FullName())) + } + panic("unreachable") +} + +// GetUnknown retrieves the entire list of unknown fields. +// The caller may only mutate the contents of the RawFields +// if the mutated bytes are stored back into the message with SetUnknown. +func (x *fastReflection_ListRequest) GetUnknown() protoreflect.RawFields { + return x.unknownFields +} + +// SetUnknown stores an entire list of unknown fields. +// The raw fields must be syntactically valid according to the wire format. +// An implementation may panic if this is not the case. +// Once stored, the caller must not mutate the content of the RawFields. +// An empty RawFields may be passed to clear the fields. +// +// SetUnknown is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_ListRequest) SetUnknown(fields protoreflect.RawFields) { + x.unknownFields = fields +} + +// IsValid reports whether the message is valid. +// +// An invalid message is an empty, read-only value. +// +// An invalid message often corresponds to a nil pointer of the concrete +// message type, but the details are implementation dependent. +// Validity is not part of the protobuf data model, and may not +// be preserved in marshaling or other operations. +func (x *fastReflection_ListRequest) IsValid() bool { + return x != nil +} + +// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations. +// This method may return nil. +// +// The returned methods type is identical to +// "google.golang.org/protobuf/runtime/protoiface".Methods. +// Consult the protoiface package documentation for details. +func (x *fastReflection_ListRequest) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*ListRequest) + if x == nil { + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: 0, + } + } + options := runtime.SizeInputToOptions(input) + _ = options + var n int + var l int + _ = l + l = len(x.MessageName) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + l = len(x.Index) + if l > 0 { + n += 1 + l + runtime.Sov(uint64(l)) + } + switch x := x.Query.(type) { + case *ListRequest_Prefix_: + if x == nil { + break + } + l = options.Size(x.Prefix) + n += 1 + l + runtime.Sov(uint64(l)) + case *ListRequest_Range_: + if x == nil { + break + } + l = options.Size(x.Range_) + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.Pagination != nil { + l = options.Size(x.Pagination) + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*ListRequest) + if x == nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + options := runtime.MarshalInputToOptions(input) + _ = options + size := options.Size(x) + dAtA := make([]byte, size) + i := len(dAtA) + _ = i + var l int + _ = l + if x.unknownFields != nil { + i -= len(x.unknownFields) + copy(dAtA[i:], x.unknownFields) + } + switch x := x.Query.(type) { + case *ListRequest_Prefix_: + encoded, err := options.Marshal(x.Prefix) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0x1a + case *ListRequest_Range_: + encoded, err := options.Marshal(x.Range_) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0x22 + } + if x.Pagination != nil { + encoded, err := options.Marshal(x.Pagination) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0x2a + } + if len(x.Index) > 0 { + i -= len(x.Index) + copy(dAtA[i:], x.Index) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Index))) + i-- + dAtA[i] = 0x12 + } + if len(x.MessageName) > 0 { + i -= len(x.MessageName) + copy(dAtA[i:], x.MessageName) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.MessageName))) + i-- + dAtA[i] = 0xa + } + if input.Buf != nil { + input.Buf = append(input.Buf, dAtA...) + } else { + input.Buf = dAtA + } + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { + x := input.Message.Interface().(*ListRequest) + if x == nil { + return protoiface.UnmarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Flags: input.Flags, + }, nil + } + options := runtime.UnmarshalInputToOptions(input) + _ = options + dAtA := input.Buf + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: ListRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: ListRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field MessageName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.MessageName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Index", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.Index = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Prefix", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + v := &ListRequest_Prefix{} + if err := options.Unmarshal(dAtA[iNdEx:postIndex], v); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + x.Query = &ListRequest_Prefix_{v} + iNdEx = postIndex + case 4: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Range_", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + v := &ListRequest_Range{} + if err := options.Unmarshal(dAtA[iNdEx:postIndex], v); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + x.Query = &ListRequest_Range_{v} + iNdEx = postIndex + case 5: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Pagination", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if x.Pagination == nil { + x.Pagination = &v1beta1.PageRequest{} + } + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Pagination); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + +var _ protoreflect.List = (*_ListRequest_Prefix_1_list)(nil) + +type _ListRequest_Prefix_1_list struct { + list *[]*IndexValue +} + +func (x *_ListRequest_Prefix_1_list) Len() int { + if x.list == nil { + return 0 + } + return len(*x.list) +} + +func (x *_ListRequest_Prefix_1_list) Get(i int) protoreflect.Value { + return protoreflect.ValueOfMessage((*x.list)[i].ProtoReflect()) +} + +func (x *_ListRequest_Prefix_1_list) Set(i int, value protoreflect.Value) { + valueUnwrapped := value.Message() + concreteValue := valueUnwrapped.Interface().(*IndexValue) + (*x.list)[i] = concreteValue +} + +func (x *_ListRequest_Prefix_1_list) Append(value protoreflect.Value) { + valueUnwrapped := value.Message() + concreteValue := valueUnwrapped.Interface().(*IndexValue) + *x.list = append(*x.list, concreteValue) +} + +func (x *_ListRequest_Prefix_1_list) AppendMutable() protoreflect.Value { + v := new(IndexValue) + *x.list = append(*x.list, v) + return protoreflect.ValueOfMessage(v.ProtoReflect()) +} + +func (x *_ListRequest_Prefix_1_list) Truncate(n int) { + for i := n; i < len(*x.list); i++ { + (*x.list)[i] = nil + } + *x.list = (*x.list)[:n] +} + +func (x *_ListRequest_Prefix_1_list) NewElement() protoreflect.Value { + v := new(IndexValue) + return protoreflect.ValueOfMessage(v.ProtoReflect()) +} + +func (x *_ListRequest_Prefix_1_list) IsValid() bool { + return x.list != nil +} + +var ( + md_ListRequest_Prefix protoreflect.MessageDescriptor + fd_ListRequest_Prefix_values protoreflect.FieldDescriptor +) + +func init() { + file_cosmos_orm_query_v1alpha1_query_proto_init() + md_ListRequest_Prefix = File_cosmos_orm_query_v1alpha1_query_proto.Messages().ByName("ListRequest").Messages().ByName("Prefix") + fd_ListRequest_Prefix_values = md_ListRequest_Prefix.Fields().ByName("values") +} + +var _ protoreflect.Message = (*fastReflection_ListRequest_Prefix)(nil) + +type fastReflection_ListRequest_Prefix ListRequest_Prefix + +func (x *ListRequest_Prefix) ProtoReflect() protoreflect.Message { + return (*fastReflection_ListRequest_Prefix)(x) +} + +func (x *ListRequest_Prefix) slowProtoReflect() protoreflect.Message { + mi := &file_cosmos_orm_query_v1alpha1_query_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +var _fastReflection_ListRequest_Prefix_messageType fastReflection_ListRequest_Prefix_messageType +var _ protoreflect.MessageType = fastReflection_ListRequest_Prefix_messageType{} + +type fastReflection_ListRequest_Prefix_messageType struct{} + +func (x fastReflection_ListRequest_Prefix_messageType) Zero() protoreflect.Message { + return (*fastReflection_ListRequest_Prefix)(nil) +} +func (x fastReflection_ListRequest_Prefix_messageType) New() protoreflect.Message { + return new(fastReflection_ListRequest_Prefix) +} +func (x fastReflection_ListRequest_Prefix_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_ListRequest_Prefix +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_ListRequest_Prefix) Descriptor() protoreflect.MessageDescriptor { + return md_ListRequest_Prefix +} + +// Type returns the message type, which encapsulates both Go and protobuf +// type information. If the Go type information is not needed, +// it is recommended that the message descriptor be used instead. +func (x *fastReflection_ListRequest_Prefix) Type() protoreflect.MessageType { + return _fastReflection_ListRequest_Prefix_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_ListRequest_Prefix) New() protoreflect.Message { + return new(fastReflection_ListRequest_Prefix) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_ListRequest_Prefix) Interface() protoreflect.ProtoMessage { + return (*ListRequest_Prefix)(x) +} + +// Range iterates over every populated field in an undefined order, +// calling f for each field descriptor and value encountered. +// Range returns immediately if f returns false. +// While iterating, mutating operations may only be performed +// on the current field descriptor. +func (x *fastReflection_ListRequest_Prefix) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if len(x.Values) != 0 { + value := protoreflect.ValueOfList(&_ListRequest_Prefix_1_list{list: &x.Values}) + if !f(fd_ListRequest_Prefix_values, value) { + return + } + } +} + +// Has reports whether a field is populated. +// +// Some fields have the property of nullability where it is possible to +// distinguish between the default value of a field and whether the field +// was explicitly populated with the default value. Singular message fields, +// member fields of a oneof, and proto2 scalar fields are nullable. Such +// fields are populated only if explicitly set. +// +// In other cases (aside from the nullable cases above), +// a proto3 scalar field is populated if it contains a non-zero value, and +// a repeated field is populated if it is non-empty. +func (x *fastReflection_ListRequest_Prefix) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.ListRequest.Prefix.values": + return len(x.Values) != 0 + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.ListRequest.Prefix")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.ListRequest.Prefix does not contain field %s", fd.FullName())) + } +} + +// Clear clears the field such that a subsequent Has call reports false. +// +// Clearing an extension field clears both the extension type and value +// associated with the given field number. +// +// Clear is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_ListRequest_Prefix) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.ListRequest.Prefix.values": + x.Values = nil + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.ListRequest.Prefix")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.ListRequest.Prefix does not contain field %s", fd.FullName())) + } +} + +// Get retrieves the value for a field. +// +// For unpopulated scalars, it returns the default value, where +// the default value of a bytes scalar is guaranteed to be a copy. +// For unpopulated composite types, it returns an empty, read-only view +// of the value; to obtain a mutable reference, use Mutable. +func (x *fastReflection_ListRequest_Prefix) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "cosmos.orm.query.v1alpha1.ListRequest.Prefix.values": + if len(x.Values) == 0 { + return protoreflect.ValueOfList(&_ListRequest_Prefix_1_list{}) + } + listValue := &_ListRequest_Prefix_1_list{list: &x.Values} + return protoreflect.ValueOfList(listValue) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.ListRequest.Prefix")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.ListRequest.Prefix does not contain field %s", descriptor.FullName())) + } +} + +// Set stores the value for a field. +// +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType. +// When setting a composite type, it is unspecified whether the stored value +// aliases the source's memory in any way. If the composite value is an +// empty, read-only value, then it panics. +// +// Set is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_ListRequest_Prefix) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.ListRequest.Prefix.values": + lv := value.List() + clv := lv.(*_ListRequest_Prefix_1_list) + x.Values = *clv.list + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.ListRequest.Prefix")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.ListRequest.Prefix does not contain field %s", fd.FullName())) + } +} + +// Mutable returns a mutable reference to a composite type. +// +// If the field is unpopulated, it may allocate a composite value. +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType +// if not already stored. +// It panics if the field does not contain a composite type. +// +// Mutable is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_ListRequest_Prefix) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.ListRequest.Prefix.values": + if x.Values == nil { + x.Values = []*IndexValue{} + } + value := &_ListRequest_Prefix_1_list{list: &x.Values} + return protoreflect.ValueOfList(value) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.ListRequest.Prefix")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.ListRequest.Prefix does not contain field %s", fd.FullName())) + } +} + +// NewField returns a new value that is assignable to the field +// for the given descriptor. For scalars, this returns the default value. +// For lists, maps, and messages, this returns a new, empty, mutable value. +func (x *fastReflection_ListRequest_Prefix) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.ListRequest.Prefix.values": + list := []*IndexValue{} + return protoreflect.ValueOfList(&_ListRequest_Prefix_1_list{list: &list}) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.ListRequest.Prefix")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.ListRequest.Prefix does not contain field %s", fd.FullName())) + } +} + +// WhichOneof reports which field within the oneof is populated, +// returning nil if none are populated. +// It panics if the oneof descriptor does not belong to this message. +func (x *fastReflection_ListRequest_Prefix) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in cosmos.orm.query.v1alpha1.ListRequest.Prefix", d.FullName())) + } + panic("unreachable") +} + +// GetUnknown retrieves the entire list of unknown fields. +// The caller may only mutate the contents of the RawFields +// if the mutated bytes are stored back into the message with SetUnknown. +func (x *fastReflection_ListRequest_Prefix) GetUnknown() protoreflect.RawFields { + return x.unknownFields +} + +// SetUnknown stores an entire list of unknown fields. +// The raw fields must be syntactically valid according to the wire format. +// An implementation may panic if this is not the case. +// Once stored, the caller must not mutate the content of the RawFields. +// An empty RawFields may be passed to clear the fields. +// +// SetUnknown is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_ListRequest_Prefix) SetUnknown(fields protoreflect.RawFields) { + x.unknownFields = fields +} + +// IsValid reports whether the message is valid. +// +// An invalid message is an empty, read-only value. +// +// An invalid message often corresponds to a nil pointer of the concrete +// message type, but the details are implementation dependent. +// Validity is not part of the protobuf data model, and may not +// be preserved in marshaling or other operations. +func (x *fastReflection_ListRequest_Prefix) IsValid() bool { + return x != nil +} + +// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations. +// This method may return nil. +// +// The returned methods type is identical to +// "google.golang.org/protobuf/runtime/protoiface".Methods. +// Consult the protoiface package documentation for details. +func (x *fastReflection_ListRequest_Prefix) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*ListRequest_Prefix) + if x == nil { + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: 0, + } + } + options := runtime.SizeInputToOptions(input) + _ = options + var n int + var l int + _ = l + if len(x.Values) > 0 { + for _, e := range x.Values { + l = options.Size(e) + n += 1 + l + runtime.Sov(uint64(l)) + } + } + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*ListRequest_Prefix) + if x == nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + options := runtime.MarshalInputToOptions(input) + _ = options + size := options.Size(x) + dAtA := make([]byte, size) + i := len(dAtA) + _ = i + var l int + _ = l + if x.unknownFields != nil { + i -= len(x.unknownFields) + copy(dAtA[i:], x.unknownFields) + } + if len(x.Values) > 0 { + for iNdEx := len(x.Values) - 1; iNdEx >= 0; iNdEx-- { + encoded, err := options.Marshal(x.Values[iNdEx]) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0xa + } + } + if input.Buf != nil { + input.Buf = append(input.Buf, dAtA...) + } else { + input.Buf = dAtA + } + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { + x := input.Message.Interface().(*ListRequest_Prefix) + if x == nil { + return protoiface.UnmarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Flags: input.Flags, + }, nil + } + options := runtime.UnmarshalInputToOptions(input) + _ = options + dAtA := input.Buf + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: ListRequest_Prefix: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: ListRequest_Prefix: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Values", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.Values = append(x.Values, &IndexValue{}) + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Values[len(x.Values)-1]); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + +var _ protoreflect.List = (*_ListRequest_Range_1_list)(nil) + +type _ListRequest_Range_1_list struct { + list *[]*IndexValue +} + +func (x *_ListRequest_Range_1_list) Len() int { + if x.list == nil { + return 0 + } + return len(*x.list) +} + +func (x *_ListRequest_Range_1_list) Get(i int) protoreflect.Value { + return protoreflect.ValueOfMessage((*x.list)[i].ProtoReflect()) +} + +func (x *_ListRequest_Range_1_list) Set(i int, value protoreflect.Value) { + valueUnwrapped := value.Message() + concreteValue := valueUnwrapped.Interface().(*IndexValue) + (*x.list)[i] = concreteValue +} + +func (x *_ListRequest_Range_1_list) Append(value protoreflect.Value) { + valueUnwrapped := value.Message() + concreteValue := valueUnwrapped.Interface().(*IndexValue) + *x.list = append(*x.list, concreteValue) +} + +func (x *_ListRequest_Range_1_list) AppendMutable() protoreflect.Value { + v := new(IndexValue) + *x.list = append(*x.list, v) + return protoreflect.ValueOfMessage(v.ProtoReflect()) +} + +func (x *_ListRequest_Range_1_list) Truncate(n int) { + for i := n; i < len(*x.list); i++ { + (*x.list)[i] = nil + } + *x.list = (*x.list)[:n] +} + +func (x *_ListRequest_Range_1_list) NewElement() protoreflect.Value { + v := new(IndexValue) + return protoreflect.ValueOfMessage(v.ProtoReflect()) +} + +func (x *_ListRequest_Range_1_list) IsValid() bool { + return x.list != nil +} + +var _ protoreflect.List = (*_ListRequest_Range_2_list)(nil) + +type _ListRequest_Range_2_list struct { + list *[]*IndexValue +} + +func (x *_ListRequest_Range_2_list) Len() int { + if x.list == nil { + return 0 + } + return len(*x.list) +} + +func (x *_ListRequest_Range_2_list) Get(i int) protoreflect.Value { + return protoreflect.ValueOfMessage((*x.list)[i].ProtoReflect()) +} + +func (x *_ListRequest_Range_2_list) Set(i int, value protoreflect.Value) { + valueUnwrapped := value.Message() + concreteValue := valueUnwrapped.Interface().(*IndexValue) + (*x.list)[i] = concreteValue +} + +func (x *_ListRequest_Range_2_list) Append(value protoreflect.Value) { + valueUnwrapped := value.Message() + concreteValue := valueUnwrapped.Interface().(*IndexValue) + *x.list = append(*x.list, concreteValue) +} + +func (x *_ListRequest_Range_2_list) AppendMutable() protoreflect.Value { + v := new(IndexValue) + *x.list = append(*x.list, v) + return protoreflect.ValueOfMessage(v.ProtoReflect()) +} + +func (x *_ListRequest_Range_2_list) Truncate(n int) { + for i := n; i < len(*x.list); i++ { + (*x.list)[i] = nil + } + *x.list = (*x.list)[:n] +} + +func (x *_ListRequest_Range_2_list) NewElement() protoreflect.Value { + v := new(IndexValue) + return protoreflect.ValueOfMessage(v.ProtoReflect()) +} + +func (x *_ListRequest_Range_2_list) IsValid() bool { + return x.list != nil +} + +var ( + md_ListRequest_Range protoreflect.MessageDescriptor + fd_ListRequest_Range_start protoreflect.FieldDescriptor + fd_ListRequest_Range_end protoreflect.FieldDescriptor +) + +func init() { + file_cosmos_orm_query_v1alpha1_query_proto_init() + md_ListRequest_Range = File_cosmos_orm_query_v1alpha1_query_proto.Messages().ByName("ListRequest").Messages().ByName("Range") + fd_ListRequest_Range_start = md_ListRequest_Range.Fields().ByName("start") + fd_ListRequest_Range_end = md_ListRequest_Range.Fields().ByName("end") +} + +var _ protoreflect.Message = (*fastReflection_ListRequest_Range)(nil) + +type fastReflection_ListRequest_Range ListRequest_Range + +func (x *ListRequest_Range) ProtoReflect() protoreflect.Message { + return (*fastReflection_ListRequest_Range)(x) +} + +func (x *ListRequest_Range) slowProtoReflect() protoreflect.Message { + mi := &file_cosmos_orm_query_v1alpha1_query_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +var _fastReflection_ListRequest_Range_messageType fastReflection_ListRequest_Range_messageType +var _ protoreflect.MessageType = fastReflection_ListRequest_Range_messageType{} + +type fastReflection_ListRequest_Range_messageType struct{} + +func (x fastReflection_ListRequest_Range_messageType) Zero() protoreflect.Message { + return (*fastReflection_ListRequest_Range)(nil) +} +func (x fastReflection_ListRequest_Range_messageType) New() protoreflect.Message { + return new(fastReflection_ListRequest_Range) +} +func (x fastReflection_ListRequest_Range_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_ListRequest_Range +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_ListRequest_Range) Descriptor() protoreflect.MessageDescriptor { + return md_ListRequest_Range +} + +// Type returns the message type, which encapsulates both Go and protobuf +// type information. If the Go type information is not needed, +// it is recommended that the message descriptor be used instead. +func (x *fastReflection_ListRequest_Range) Type() protoreflect.MessageType { + return _fastReflection_ListRequest_Range_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_ListRequest_Range) New() protoreflect.Message { + return new(fastReflection_ListRequest_Range) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_ListRequest_Range) Interface() protoreflect.ProtoMessage { + return (*ListRequest_Range)(x) +} + +// Range iterates over every populated field in an undefined order, +// calling f for each field descriptor and value encountered. +// Range returns immediately if f returns false. +// While iterating, mutating operations may only be performed +// on the current field descriptor. +func (x *fastReflection_ListRequest_Range) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if len(x.Start) != 0 { + value := protoreflect.ValueOfList(&_ListRequest_Range_1_list{list: &x.Start}) + if !f(fd_ListRequest_Range_start, value) { + return + } + } + if len(x.End) != 0 { + value := protoreflect.ValueOfList(&_ListRequest_Range_2_list{list: &x.End}) + if !f(fd_ListRequest_Range_end, value) { + return + } + } +} + +// Has reports whether a field is populated. +// +// Some fields have the property of nullability where it is possible to +// distinguish between the default value of a field and whether the field +// was explicitly populated with the default value. Singular message fields, +// member fields of a oneof, and proto2 scalar fields are nullable. Such +// fields are populated only if explicitly set. +// +// In other cases (aside from the nullable cases above), +// a proto3 scalar field is populated if it contains a non-zero value, and +// a repeated field is populated if it is non-empty. +func (x *fastReflection_ListRequest_Range) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.ListRequest.Range.start": + return len(x.Start) != 0 + case "cosmos.orm.query.v1alpha1.ListRequest.Range.end": + return len(x.End) != 0 + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.ListRequest.Range")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.ListRequest.Range does not contain field %s", fd.FullName())) + } +} + +// Clear clears the field such that a subsequent Has call reports false. +// +// Clearing an extension field clears both the extension type and value +// associated with the given field number. +// +// Clear is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_ListRequest_Range) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.ListRequest.Range.start": + x.Start = nil + case "cosmos.orm.query.v1alpha1.ListRequest.Range.end": + x.End = nil + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.ListRequest.Range")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.ListRequest.Range does not contain field %s", fd.FullName())) + } +} + +// Get retrieves the value for a field. +// +// For unpopulated scalars, it returns the default value, where +// the default value of a bytes scalar is guaranteed to be a copy. +// For unpopulated composite types, it returns an empty, read-only view +// of the value; to obtain a mutable reference, use Mutable. +func (x *fastReflection_ListRequest_Range) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "cosmos.orm.query.v1alpha1.ListRequest.Range.start": + if len(x.Start) == 0 { + return protoreflect.ValueOfList(&_ListRequest_Range_1_list{}) + } + listValue := &_ListRequest_Range_1_list{list: &x.Start} + return protoreflect.ValueOfList(listValue) + case "cosmos.orm.query.v1alpha1.ListRequest.Range.end": + if len(x.End) == 0 { + return protoreflect.ValueOfList(&_ListRequest_Range_2_list{}) + } + listValue := &_ListRequest_Range_2_list{list: &x.End} + return protoreflect.ValueOfList(listValue) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.ListRequest.Range")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.ListRequest.Range does not contain field %s", descriptor.FullName())) + } +} + +// Set stores the value for a field. +// +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType. +// When setting a composite type, it is unspecified whether the stored value +// aliases the source's memory in any way. If the composite value is an +// empty, read-only value, then it panics. +// +// Set is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_ListRequest_Range) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.ListRequest.Range.start": + lv := value.List() + clv := lv.(*_ListRequest_Range_1_list) + x.Start = *clv.list + case "cosmos.orm.query.v1alpha1.ListRequest.Range.end": + lv := value.List() + clv := lv.(*_ListRequest_Range_2_list) + x.End = *clv.list + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.ListRequest.Range")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.ListRequest.Range does not contain field %s", fd.FullName())) + } +} + +// Mutable returns a mutable reference to a composite type. +// +// If the field is unpopulated, it may allocate a composite value. +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType +// if not already stored. +// It panics if the field does not contain a composite type. +// +// Mutable is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_ListRequest_Range) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.ListRequest.Range.start": + if x.Start == nil { + x.Start = []*IndexValue{} + } + value := &_ListRequest_Range_1_list{list: &x.Start} + return protoreflect.ValueOfList(value) + case "cosmos.orm.query.v1alpha1.ListRequest.Range.end": + if x.End == nil { + x.End = []*IndexValue{} + } + value := &_ListRequest_Range_2_list{list: &x.End} + return protoreflect.ValueOfList(value) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.ListRequest.Range")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.ListRequest.Range does not contain field %s", fd.FullName())) + } +} + +// NewField returns a new value that is assignable to the field +// for the given descriptor. For scalars, this returns the default value. +// For lists, maps, and messages, this returns a new, empty, mutable value. +func (x *fastReflection_ListRequest_Range) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.ListRequest.Range.start": + list := []*IndexValue{} + return protoreflect.ValueOfList(&_ListRequest_Range_1_list{list: &list}) + case "cosmos.orm.query.v1alpha1.ListRequest.Range.end": + list := []*IndexValue{} + return protoreflect.ValueOfList(&_ListRequest_Range_2_list{list: &list}) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.ListRequest.Range")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.ListRequest.Range does not contain field %s", fd.FullName())) + } +} + +// WhichOneof reports which field within the oneof is populated, +// returning nil if none are populated. +// It panics if the oneof descriptor does not belong to this message. +func (x *fastReflection_ListRequest_Range) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in cosmos.orm.query.v1alpha1.ListRequest.Range", d.FullName())) + } + panic("unreachable") +} + +// GetUnknown retrieves the entire list of unknown fields. +// The caller may only mutate the contents of the RawFields +// if the mutated bytes are stored back into the message with SetUnknown. +func (x *fastReflection_ListRequest_Range) GetUnknown() protoreflect.RawFields { + return x.unknownFields +} + +// SetUnknown stores an entire list of unknown fields. +// The raw fields must be syntactically valid according to the wire format. +// An implementation may panic if this is not the case. +// Once stored, the caller must not mutate the content of the RawFields. +// An empty RawFields may be passed to clear the fields. +// +// SetUnknown is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_ListRequest_Range) SetUnknown(fields protoreflect.RawFields) { + x.unknownFields = fields +} + +// IsValid reports whether the message is valid. +// +// An invalid message is an empty, read-only value. +// +// An invalid message often corresponds to a nil pointer of the concrete +// message type, but the details are implementation dependent. +// Validity is not part of the protobuf data model, and may not +// be preserved in marshaling or other operations. +func (x *fastReflection_ListRequest_Range) IsValid() bool { + return x != nil +} + +// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations. +// This method may return nil. +// +// The returned methods type is identical to +// "google.golang.org/protobuf/runtime/protoiface".Methods. +// Consult the protoiface package documentation for details. +func (x *fastReflection_ListRequest_Range) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*ListRequest_Range) + if x == nil { + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: 0, + } + } + options := runtime.SizeInputToOptions(input) + _ = options + var n int + var l int + _ = l + if len(x.Start) > 0 { + for _, e := range x.Start { + l = options.Size(e) + n += 1 + l + runtime.Sov(uint64(l)) + } + } + if len(x.End) > 0 { + for _, e := range x.End { + l = options.Size(e) + n += 1 + l + runtime.Sov(uint64(l)) + } + } + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*ListRequest_Range) + if x == nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + options := runtime.MarshalInputToOptions(input) + _ = options + size := options.Size(x) + dAtA := make([]byte, size) + i := len(dAtA) + _ = i + var l int + _ = l + if x.unknownFields != nil { + i -= len(x.unknownFields) + copy(dAtA[i:], x.unknownFields) + } + if len(x.End) > 0 { + for iNdEx := len(x.End) - 1; iNdEx >= 0; iNdEx-- { + encoded, err := options.Marshal(x.End[iNdEx]) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0x12 + } + } + if len(x.Start) > 0 { + for iNdEx := len(x.Start) - 1; iNdEx >= 0; iNdEx-- { + encoded, err := options.Marshal(x.Start[iNdEx]) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0xa + } + } + if input.Buf != nil { + input.Buf = append(input.Buf, dAtA...) + } else { + input.Buf = dAtA + } + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { + x := input.Message.Interface().(*ListRequest_Range) + if x == nil { + return protoiface.UnmarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Flags: input.Flags, + }, nil + } + options := runtime.UnmarshalInputToOptions(input) + _ = options + dAtA := input.Buf + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: ListRequest_Range: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: ListRequest_Range: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Start", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.Start = append(x.Start, &IndexValue{}) + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Start[len(x.Start)-1]); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field End", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.End = append(x.End, &IndexValue{}) + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.End[len(x.End)-1]); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + +var _ protoreflect.List = (*_ListResponse_1_list)(nil) + +type _ListResponse_1_list struct { + list *[]*anypb.Any +} + +func (x *_ListResponse_1_list) Len() int { + if x.list == nil { + return 0 + } + return len(*x.list) +} + +func (x *_ListResponse_1_list) Get(i int) protoreflect.Value { + return protoreflect.ValueOfMessage((*x.list)[i].ProtoReflect()) +} + +func (x *_ListResponse_1_list) Set(i int, value protoreflect.Value) { + valueUnwrapped := value.Message() + concreteValue := valueUnwrapped.Interface().(*anypb.Any) + (*x.list)[i] = concreteValue +} + +func (x *_ListResponse_1_list) Append(value protoreflect.Value) { + valueUnwrapped := value.Message() + concreteValue := valueUnwrapped.Interface().(*anypb.Any) + *x.list = append(*x.list, concreteValue) +} + +func (x *_ListResponse_1_list) AppendMutable() protoreflect.Value { + v := new(anypb.Any) + *x.list = append(*x.list, v) + return protoreflect.ValueOfMessage(v.ProtoReflect()) +} + +func (x *_ListResponse_1_list) Truncate(n int) { + for i := n; i < len(*x.list); i++ { + (*x.list)[i] = nil + } + *x.list = (*x.list)[:n] +} + +func (x *_ListResponse_1_list) NewElement() protoreflect.Value { + v := new(anypb.Any) + return protoreflect.ValueOfMessage(v.ProtoReflect()) +} + +func (x *_ListResponse_1_list) IsValid() bool { + return x.list != nil +} + +var ( + md_ListResponse protoreflect.MessageDescriptor + fd_ListResponse_results protoreflect.FieldDescriptor + fd_ListResponse_pagination protoreflect.FieldDescriptor +) + +func init() { + file_cosmos_orm_query_v1alpha1_query_proto_init() + md_ListResponse = File_cosmos_orm_query_v1alpha1_query_proto.Messages().ByName("ListResponse") + fd_ListResponse_results = md_ListResponse.Fields().ByName("results") + fd_ListResponse_pagination = md_ListResponse.Fields().ByName("pagination") +} + +var _ protoreflect.Message = (*fastReflection_ListResponse)(nil) + +type fastReflection_ListResponse ListResponse + +func (x *ListResponse) ProtoReflect() protoreflect.Message { + return (*fastReflection_ListResponse)(x) +} + +func (x *ListResponse) slowProtoReflect() protoreflect.Message { + mi := &file_cosmos_orm_query_v1alpha1_query_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +var _fastReflection_ListResponse_messageType fastReflection_ListResponse_messageType +var _ protoreflect.MessageType = fastReflection_ListResponse_messageType{} + +type fastReflection_ListResponse_messageType struct{} + +func (x fastReflection_ListResponse_messageType) Zero() protoreflect.Message { + return (*fastReflection_ListResponse)(nil) +} +func (x fastReflection_ListResponse_messageType) New() protoreflect.Message { + return new(fastReflection_ListResponse) +} +func (x fastReflection_ListResponse_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_ListResponse +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_ListResponse) Descriptor() protoreflect.MessageDescriptor { + return md_ListResponse +} + +// Type returns the message type, which encapsulates both Go and protobuf +// type information. If the Go type information is not needed, +// it is recommended that the message descriptor be used instead. +func (x *fastReflection_ListResponse) Type() protoreflect.MessageType { + return _fastReflection_ListResponse_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_ListResponse) New() protoreflect.Message { + return new(fastReflection_ListResponse) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_ListResponse) Interface() protoreflect.ProtoMessage { + return (*ListResponse)(x) +} + +// Range iterates over every populated field in an undefined order, +// calling f for each field descriptor and value encountered. +// Range returns immediately if f returns false. +// While iterating, mutating operations may only be performed +// on the current field descriptor. +func (x *fastReflection_ListResponse) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if len(x.Results) != 0 { + value := protoreflect.ValueOfList(&_ListResponse_1_list{list: &x.Results}) + if !f(fd_ListResponse_results, value) { + return + } + } + if x.Pagination != nil { + value := protoreflect.ValueOfMessage(x.Pagination.ProtoReflect()) + if !f(fd_ListResponse_pagination, value) { + return + } + } +} + +// Has reports whether a field is populated. +// +// Some fields have the property of nullability where it is possible to +// distinguish between the default value of a field and whether the field +// was explicitly populated with the default value. Singular message fields, +// member fields of a oneof, and proto2 scalar fields are nullable. Such +// fields are populated only if explicitly set. +// +// In other cases (aside from the nullable cases above), +// a proto3 scalar field is populated if it contains a non-zero value, and +// a repeated field is populated if it is non-empty. +func (x *fastReflection_ListResponse) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.ListResponse.results": + return len(x.Results) != 0 + case "cosmos.orm.query.v1alpha1.ListResponse.pagination": + return x.Pagination != nil + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.ListResponse")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.ListResponse does not contain field %s", fd.FullName())) + } +} + +// Clear clears the field such that a subsequent Has call reports false. +// +// Clearing an extension field clears both the extension type and value +// associated with the given field number. +// +// Clear is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_ListResponse) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.ListResponse.results": + x.Results = nil + case "cosmos.orm.query.v1alpha1.ListResponse.pagination": + x.Pagination = nil + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.ListResponse")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.ListResponse does not contain field %s", fd.FullName())) + } +} + +// Get retrieves the value for a field. +// +// For unpopulated scalars, it returns the default value, where +// the default value of a bytes scalar is guaranteed to be a copy. +// For unpopulated composite types, it returns an empty, read-only view +// of the value; to obtain a mutable reference, use Mutable. +func (x *fastReflection_ListResponse) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "cosmos.orm.query.v1alpha1.ListResponse.results": + if len(x.Results) == 0 { + return protoreflect.ValueOfList(&_ListResponse_1_list{}) + } + listValue := &_ListResponse_1_list{list: &x.Results} + return protoreflect.ValueOfList(listValue) + case "cosmos.orm.query.v1alpha1.ListResponse.pagination": + value := x.Pagination + return protoreflect.ValueOfMessage(value.ProtoReflect()) + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.ListResponse")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.ListResponse does not contain field %s", descriptor.FullName())) + } +} + +// Set stores the value for a field. +// +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType. +// When setting a composite type, it is unspecified whether the stored value +// aliases the source's memory in any way. If the composite value is an +// empty, read-only value, then it panics. +// +// Set is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_ListResponse) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.ListResponse.results": + lv := value.List() + clv := lv.(*_ListResponse_1_list) + x.Results = *clv.list + case "cosmos.orm.query.v1alpha1.ListResponse.pagination": + x.Pagination = value.Message().Interface().(*v1beta1.PageResponse) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.ListResponse")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.ListResponse does not contain field %s", fd.FullName())) + } +} + +// Mutable returns a mutable reference to a composite type. +// +// If the field is unpopulated, it may allocate a composite value. +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType +// if not already stored. +// It panics if the field does not contain a composite type. +// +// Mutable is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_ListResponse) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.ListResponse.results": + if x.Results == nil { + x.Results = []*anypb.Any{} + } + value := &_ListResponse_1_list{list: &x.Results} + return protoreflect.ValueOfList(value) + case "cosmos.orm.query.v1alpha1.ListResponse.pagination": + if x.Pagination == nil { + x.Pagination = new(v1beta1.PageResponse) + } + return protoreflect.ValueOfMessage(x.Pagination.ProtoReflect()) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.ListResponse")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.ListResponse does not contain field %s", fd.FullName())) + } +} + +// NewField returns a new value that is assignable to the field +// for the given descriptor. For scalars, this returns the default value. +// For lists, maps, and messages, this returns a new, empty, mutable value. +func (x *fastReflection_ListResponse) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.ListResponse.results": + list := []*anypb.Any{} + return protoreflect.ValueOfList(&_ListResponse_1_list{list: &list}) + case "cosmos.orm.query.v1alpha1.ListResponse.pagination": + m := new(v1beta1.PageResponse) + return protoreflect.ValueOfMessage(m.ProtoReflect()) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.ListResponse")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.ListResponse does not contain field %s", fd.FullName())) + } +} + +// WhichOneof reports which field within the oneof is populated, +// returning nil if none are populated. +// It panics if the oneof descriptor does not belong to this message. +func (x *fastReflection_ListResponse) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + default: + panic(fmt.Errorf("%s is not a oneof field in cosmos.orm.query.v1alpha1.ListResponse", d.FullName())) + } + panic("unreachable") +} + +// GetUnknown retrieves the entire list of unknown fields. +// The caller may only mutate the contents of the RawFields +// if the mutated bytes are stored back into the message with SetUnknown. +func (x *fastReflection_ListResponse) GetUnknown() protoreflect.RawFields { + return x.unknownFields +} + +// SetUnknown stores an entire list of unknown fields. +// The raw fields must be syntactically valid according to the wire format. +// An implementation may panic if this is not the case. +// Once stored, the caller must not mutate the content of the RawFields. +// An empty RawFields may be passed to clear the fields. +// +// SetUnknown is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_ListResponse) SetUnknown(fields protoreflect.RawFields) { + x.unknownFields = fields +} + +// IsValid reports whether the message is valid. +// +// An invalid message is an empty, read-only value. +// +// An invalid message often corresponds to a nil pointer of the concrete +// message type, but the details are implementation dependent. +// Validity is not part of the protobuf data model, and may not +// be preserved in marshaling or other operations. +func (x *fastReflection_ListResponse) IsValid() bool { + return x != nil +} + +// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations. +// This method may return nil. +// +// The returned methods type is identical to +// "google.golang.org/protobuf/runtime/protoiface".Methods. +// Consult the protoiface package documentation for details. +func (x *fastReflection_ListResponse) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*ListResponse) + if x == nil { + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: 0, + } + } + options := runtime.SizeInputToOptions(input) + _ = options + var n int + var l int + _ = l + if len(x.Results) > 0 { + for _, e := range x.Results { + l = options.Size(e) + n += 1 + l + runtime.Sov(uint64(l)) + } + } + if x.Pagination != nil { + l = options.Size(x.Pagination) + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*ListResponse) + if x == nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + options := runtime.MarshalInputToOptions(input) + _ = options + size := options.Size(x) + dAtA := make([]byte, size) + i := len(dAtA) + _ = i + var l int + _ = l + if x.unknownFields != nil { + i -= len(x.unknownFields) + copy(dAtA[i:], x.unknownFields) + } + if x.Pagination != nil { + encoded, err := options.Marshal(x.Pagination) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0x2a + } + if len(x.Results) > 0 { + for iNdEx := len(x.Results) - 1; iNdEx >= 0; iNdEx-- { + encoded, err := options.Marshal(x.Results[iNdEx]) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0xa + } + } + if input.Buf != nil { + input.Buf = append(input.Buf, dAtA...) + } else { + input.Buf = dAtA + } + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { + x := input.Message.Interface().(*ListResponse) + if x == nil { + return protoiface.UnmarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Flags: input.Flags, + }, nil + } + options := runtime.UnmarshalInputToOptions(input) + _ = options + dAtA := input.Buf + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: ListResponse: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: ListResponse: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Results", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.Results = append(x.Results, &anypb.Any{}) + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Results[len(x.Results)-1]); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + iNdEx = postIndex + case 5: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Pagination", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if x.Pagination == nil { + x.Pagination = &v1beta1.PageResponse{} + } + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Pagination); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + +var ( + md_IndexValue protoreflect.MessageDescriptor + fd_IndexValue_uint protoreflect.FieldDescriptor + fd_IndexValue_int protoreflect.FieldDescriptor + fd_IndexValue_str protoreflect.FieldDescriptor + fd_IndexValue_bytes protoreflect.FieldDescriptor + fd_IndexValue_enum protoreflect.FieldDescriptor + fd_IndexValue_bool protoreflect.FieldDescriptor + fd_IndexValue_timestamp protoreflect.FieldDescriptor + fd_IndexValue_duration protoreflect.FieldDescriptor +) + +func init() { + file_cosmos_orm_query_v1alpha1_query_proto_init() + md_IndexValue = File_cosmos_orm_query_v1alpha1_query_proto.Messages().ByName("IndexValue") + fd_IndexValue_uint = md_IndexValue.Fields().ByName("uint") + fd_IndexValue_int = md_IndexValue.Fields().ByName("int") + fd_IndexValue_str = md_IndexValue.Fields().ByName("str") + fd_IndexValue_bytes = md_IndexValue.Fields().ByName("bytes") + fd_IndexValue_enum = md_IndexValue.Fields().ByName("enum") + fd_IndexValue_bool = md_IndexValue.Fields().ByName("bool") + fd_IndexValue_timestamp = md_IndexValue.Fields().ByName("timestamp") + fd_IndexValue_duration = md_IndexValue.Fields().ByName("duration") +} + +var _ protoreflect.Message = (*fastReflection_IndexValue)(nil) + +type fastReflection_IndexValue IndexValue + +func (x *IndexValue) ProtoReflect() protoreflect.Message { + return (*fastReflection_IndexValue)(x) +} + +func (x *IndexValue) slowProtoReflect() protoreflect.Message { + mi := &file_cosmos_orm_query_v1alpha1_query_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +var _fastReflection_IndexValue_messageType fastReflection_IndexValue_messageType +var _ protoreflect.MessageType = fastReflection_IndexValue_messageType{} + +type fastReflection_IndexValue_messageType struct{} + +func (x fastReflection_IndexValue_messageType) Zero() protoreflect.Message { + return (*fastReflection_IndexValue)(nil) +} +func (x fastReflection_IndexValue_messageType) New() protoreflect.Message { + return new(fastReflection_IndexValue) +} +func (x fastReflection_IndexValue_messageType) Descriptor() protoreflect.MessageDescriptor { + return md_IndexValue +} + +// Descriptor returns message descriptor, which contains only the protobuf +// type information for the message. +func (x *fastReflection_IndexValue) Descriptor() protoreflect.MessageDescriptor { + return md_IndexValue +} + +// Type returns the message type, which encapsulates both Go and protobuf +// type information. If the Go type information is not needed, +// it is recommended that the message descriptor be used instead. +func (x *fastReflection_IndexValue) Type() protoreflect.MessageType { + return _fastReflection_IndexValue_messageType +} + +// New returns a newly allocated and mutable empty message. +func (x *fastReflection_IndexValue) New() protoreflect.Message { + return new(fastReflection_IndexValue) +} + +// Interface unwraps the message reflection interface and +// returns the underlying ProtoMessage interface. +func (x *fastReflection_IndexValue) Interface() protoreflect.ProtoMessage { + return (*IndexValue)(x) +} + +// Range iterates over every populated field in an undefined order, +// calling f for each field descriptor and value encountered. +// Range returns immediately if f returns false. +// While iterating, mutating operations may only be performed +// on the current field descriptor. +func (x *fastReflection_IndexValue) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) { + if x.Value != nil { + switch o := x.Value.(type) { + case *IndexValue_Uint: + v := o.Uint + value := protoreflect.ValueOfUint64(v) + if !f(fd_IndexValue_uint, value) { + return + } + case *IndexValue_Int: + v := o.Int + value := protoreflect.ValueOfInt64(v) + if !f(fd_IndexValue_int, value) { + return + } + case *IndexValue_Str: + v := o.Str + value := protoreflect.ValueOfString(v) + if !f(fd_IndexValue_str, value) { + return + } + case *IndexValue_Bytes: + v := o.Bytes + value := protoreflect.ValueOfBytes(v) + if !f(fd_IndexValue_bytes, value) { + return + } + case *IndexValue_Enum: + v := o.Enum + value := protoreflect.ValueOfString(v) + if !f(fd_IndexValue_enum, value) { + return + } + case *IndexValue_Bool: + v := o.Bool + value := protoreflect.ValueOfBool(v) + if !f(fd_IndexValue_bool, value) { + return + } + case *IndexValue_Timestamp: + v := o.Timestamp + value := protoreflect.ValueOfMessage(v.ProtoReflect()) + if !f(fd_IndexValue_timestamp, value) { + return + } + case *IndexValue_Duration: + v := o.Duration + value := protoreflect.ValueOfMessage(v.ProtoReflect()) + if !f(fd_IndexValue_duration, value) { + return + } + } + } +} + +// Has reports whether a field is populated. +// +// Some fields have the property of nullability where it is possible to +// distinguish between the default value of a field and whether the field +// was explicitly populated with the default value. Singular message fields, +// member fields of a oneof, and proto2 scalar fields are nullable. Such +// fields are populated only if explicitly set. +// +// In other cases (aside from the nullable cases above), +// a proto3 scalar field is populated if it contains a non-zero value, and +// a repeated field is populated if it is non-empty. +func (x *fastReflection_IndexValue) Has(fd protoreflect.FieldDescriptor) bool { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.IndexValue.uint": + if x.Value == nil { + return false + } else if _, ok := x.Value.(*IndexValue_Uint); ok { + return true + } else { + return false + } + case "cosmos.orm.query.v1alpha1.IndexValue.int": + if x.Value == nil { + return false + } else if _, ok := x.Value.(*IndexValue_Int); ok { + return true + } else { + return false + } + case "cosmos.orm.query.v1alpha1.IndexValue.str": + if x.Value == nil { + return false + } else if _, ok := x.Value.(*IndexValue_Str); ok { + return true + } else { + return false + } + case "cosmos.orm.query.v1alpha1.IndexValue.bytes": + if x.Value == nil { + return false + } else if _, ok := x.Value.(*IndexValue_Bytes); ok { + return true + } else { + return false + } + case "cosmos.orm.query.v1alpha1.IndexValue.enum": + if x.Value == nil { + return false + } else if _, ok := x.Value.(*IndexValue_Enum); ok { + return true + } else { + return false + } + case "cosmos.orm.query.v1alpha1.IndexValue.bool": + if x.Value == nil { + return false + } else if _, ok := x.Value.(*IndexValue_Bool); ok { + return true + } else { + return false + } + case "cosmos.orm.query.v1alpha1.IndexValue.timestamp": + if x.Value == nil { + return false + } else if _, ok := x.Value.(*IndexValue_Timestamp); ok { + return true + } else { + return false + } + case "cosmos.orm.query.v1alpha1.IndexValue.duration": + if x.Value == nil { + return false + } else if _, ok := x.Value.(*IndexValue_Duration); ok { + return true + } else { + return false + } + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.IndexValue")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.IndexValue does not contain field %s", fd.FullName())) + } +} + +// Clear clears the field such that a subsequent Has call reports false. +// +// Clearing an extension field clears both the extension type and value +// associated with the given field number. +// +// Clear is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_IndexValue) Clear(fd protoreflect.FieldDescriptor) { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.IndexValue.uint": + x.Value = nil + case "cosmos.orm.query.v1alpha1.IndexValue.int": + x.Value = nil + case "cosmos.orm.query.v1alpha1.IndexValue.str": + x.Value = nil + case "cosmos.orm.query.v1alpha1.IndexValue.bytes": + x.Value = nil + case "cosmos.orm.query.v1alpha1.IndexValue.enum": + x.Value = nil + case "cosmos.orm.query.v1alpha1.IndexValue.bool": + x.Value = nil + case "cosmos.orm.query.v1alpha1.IndexValue.timestamp": + x.Value = nil + case "cosmos.orm.query.v1alpha1.IndexValue.duration": + x.Value = nil + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.IndexValue")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.IndexValue does not contain field %s", fd.FullName())) + } +} + +// Get retrieves the value for a field. +// +// For unpopulated scalars, it returns the default value, where +// the default value of a bytes scalar is guaranteed to be a copy. +// For unpopulated composite types, it returns an empty, read-only view +// of the value; to obtain a mutable reference, use Mutable. +func (x *fastReflection_IndexValue) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value { + switch descriptor.FullName() { + case "cosmos.orm.query.v1alpha1.IndexValue.uint": + if x.Value == nil { + return protoreflect.ValueOfUint64(uint64(0)) + } else if v, ok := x.Value.(*IndexValue_Uint); ok { + return protoreflect.ValueOfUint64(v.Uint) + } else { + return protoreflect.ValueOfUint64(uint64(0)) + } + case "cosmos.orm.query.v1alpha1.IndexValue.int": + if x.Value == nil { + return protoreflect.ValueOfInt64(int64(0)) + } else if v, ok := x.Value.(*IndexValue_Int); ok { + return protoreflect.ValueOfInt64(v.Int) + } else { + return protoreflect.ValueOfInt64(int64(0)) + } + case "cosmos.orm.query.v1alpha1.IndexValue.str": + if x.Value == nil { + return protoreflect.ValueOfString("") + } else if v, ok := x.Value.(*IndexValue_Str); ok { + return protoreflect.ValueOfString(v.Str) + } else { + return protoreflect.ValueOfString("") + } + case "cosmos.orm.query.v1alpha1.IndexValue.bytes": + if x.Value == nil { + return protoreflect.ValueOfBytes(nil) + } else if v, ok := x.Value.(*IndexValue_Bytes); ok { + return protoreflect.ValueOfBytes(v.Bytes) + } else { + return protoreflect.ValueOfBytes(nil) + } + case "cosmos.orm.query.v1alpha1.IndexValue.enum": + if x.Value == nil { + return protoreflect.ValueOfString("") + } else if v, ok := x.Value.(*IndexValue_Enum); ok { + return protoreflect.ValueOfString(v.Enum) + } else { + return protoreflect.ValueOfString("") + } + case "cosmos.orm.query.v1alpha1.IndexValue.bool": + if x.Value == nil { + return protoreflect.ValueOfBool(false) + } else if v, ok := x.Value.(*IndexValue_Bool); ok { + return protoreflect.ValueOfBool(v.Bool) + } else { + return protoreflect.ValueOfBool(false) + } + case "cosmos.orm.query.v1alpha1.IndexValue.timestamp": + if x.Value == nil { + return protoreflect.ValueOfMessage((*timestamppb.Timestamp)(nil).ProtoReflect()) + } else if v, ok := x.Value.(*IndexValue_Timestamp); ok { + return protoreflect.ValueOfMessage(v.Timestamp.ProtoReflect()) + } else { + return protoreflect.ValueOfMessage((*timestamppb.Timestamp)(nil).ProtoReflect()) + } + case "cosmos.orm.query.v1alpha1.IndexValue.duration": + if x.Value == nil { + return protoreflect.ValueOfMessage((*durationpb.Duration)(nil).ProtoReflect()) + } else if v, ok := x.Value.(*IndexValue_Duration); ok { + return protoreflect.ValueOfMessage(v.Duration.ProtoReflect()) + } else { + return protoreflect.ValueOfMessage((*durationpb.Duration)(nil).ProtoReflect()) + } + default: + if descriptor.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.IndexValue")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.IndexValue does not contain field %s", descriptor.FullName())) + } +} + +// Set stores the value for a field. +// +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType. +// When setting a composite type, it is unspecified whether the stored value +// aliases the source's memory in any way. If the composite value is an +// empty, read-only value, then it panics. +// +// Set is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_IndexValue) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.IndexValue.uint": + cv := value.Uint() + x.Value = &IndexValue_Uint{Uint: cv} + case "cosmos.orm.query.v1alpha1.IndexValue.int": + cv := value.Int() + x.Value = &IndexValue_Int{Int: cv} + case "cosmos.orm.query.v1alpha1.IndexValue.str": + cv := value.Interface().(string) + x.Value = &IndexValue_Str{Str: cv} + case "cosmos.orm.query.v1alpha1.IndexValue.bytes": + cv := value.Bytes() + x.Value = &IndexValue_Bytes{Bytes: cv} + case "cosmos.orm.query.v1alpha1.IndexValue.enum": + cv := value.Interface().(string) + x.Value = &IndexValue_Enum{Enum: cv} + case "cosmos.orm.query.v1alpha1.IndexValue.bool": + cv := value.Bool() + x.Value = &IndexValue_Bool{Bool: cv} + case "cosmos.orm.query.v1alpha1.IndexValue.timestamp": + cv := value.Message().Interface().(*timestamppb.Timestamp) + x.Value = &IndexValue_Timestamp{Timestamp: cv} + case "cosmos.orm.query.v1alpha1.IndexValue.duration": + cv := value.Message().Interface().(*durationpb.Duration) + x.Value = &IndexValue_Duration{Duration: cv} + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.IndexValue")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.IndexValue does not contain field %s", fd.FullName())) + } +} + +// Mutable returns a mutable reference to a composite type. +// +// If the field is unpopulated, it may allocate a composite value. +// For a field belonging to a oneof, it implicitly clears any other field +// that may be currently set within the same oneof. +// For extension fields, it implicitly stores the provided ExtensionType +// if not already stored. +// It panics if the field does not contain a composite type. +// +// Mutable is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_IndexValue) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.IndexValue.timestamp": + if x.Value == nil { + value := ×tamppb.Timestamp{} + oneofValue := &IndexValue_Timestamp{Timestamp: value} + x.Value = oneofValue + return protoreflect.ValueOfMessage(value.ProtoReflect()) + } + switch m := x.Value.(type) { + case *IndexValue_Timestamp: + return protoreflect.ValueOfMessage(m.Timestamp.ProtoReflect()) + default: + value := ×tamppb.Timestamp{} + oneofValue := &IndexValue_Timestamp{Timestamp: value} + x.Value = oneofValue + return protoreflect.ValueOfMessage(value.ProtoReflect()) + } + case "cosmos.orm.query.v1alpha1.IndexValue.duration": + if x.Value == nil { + value := &durationpb.Duration{} + oneofValue := &IndexValue_Duration{Duration: value} + x.Value = oneofValue + return protoreflect.ValueOfMessage(value.ProtoReflect()) + } + switch m := x.Value.(type) { + case *IndexValue_Duration: + return protoreflect.ValueOfMessage(m.Duration.ProtoReflect()) + default: + value := &durationpb.Duration{} + oneofValue := &IndexValue_Duration{Duration: value} + x.Value = oneofValue + return protoreflect.ValueOfMessage(value.ProtoReflect()) + } + case "cosmos.orm.query.v1alpha1.IndexValue.uint": + panic(fmt.Errorf("field uint of message cosmos.orm.query.v1alpha1.IndexValue is not mutable")) + case "cosmos.orm.query.v1alpha1.IndexValue.int": + panic(fmt.Errorf("field int of message cosmos.orm.query.v1alpha1.IndexValue is not mutable")) + case "cosmos.orm.query.v1alpha1.IndexValue.str": + panic(fmt.Errorf("field str of message cosmos.orm.query.v1alpha1.IndexValue is not mutable")) + case "cosmos.orm.query.v1alpha1.IndexValue.bytes": + panic(fmt.Errorf("field bytes of message cosmos.orm.query.v1alpha1.IndexValue is not mutable")) + case "cosmos.orm.query.v1alpha1.IndexValue.enum": + panic(fmt.Errorf("field enum of message cosmos.orm.query.v1alpha1.IndexValue is not mutable")) + case "cosmos.orm.query.v1alpha1.IndexValue.bool": + panic(fmt.Errorf("field bool of message cosmos.orm.query.v1alpha1.IndexValue is not mutable")) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.IndexValue")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.IndexValue does not contain field %s", fd.FullName())) + } +} + +// NewField returns a new value that is assignable to the field +// for the given descriptor. For scalars, this returns the default value. +// For lists, maps, and messages, this returns a new, empty, mutable value. +func (x *fastReflection_IndexValue) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value { + switch fd.FullName() { + case "cosmos.orm.query.v1alpha1.IndexValue.uint": + return protoreflect.ValueOfUint64(uint64(0)) + case "cosmos.orm.query.v1alpha1.IndexValue.int": + return protoreflect.ValueOfInt64(int64(0)) + case "cosmos.orm.query.v1alpha1.IndexValue.str": + return protoreflect.ValueOfString("") + case "cosmos.orm.query.v1alpha1.IndexValue.bytes": + return protoreflect.ValueOfBytes(nil) + case "cosmos.orm.query.v1alpha1.IndexValue.enum": + return protoreflect.ValueOfString("") + case "cosmos.orm.query.v1alpha1.IndexValue.bool": + return protoreflect.ValueOfBool(false) + case "cosmos.orm.query.v1alpha1.IndexValue.timestamp": + value := ×tamppb.Timestamp{} + return protoreflect.ValueOfMessage(value.ProtoReflect()) + case "cosmos.orm.query.v1alpha1.IndexValue.duration": + value := &durationpb.Duration{} + return protoreflect.ValueOfMessage(value.ProtoReflect()) + default: + if fd.IsExtension() { + panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.orm.query.v1alpha1.IndexValue")) + } + panic(fmt.Errorf("message cosmos.orm.query.v1alpha1.IndexValue does not contain field %s", fd.FullName())) + } +} + +// WhichOneof reports which field within the oneof is populated, +// returning nil if none are populated. +// It panics if the oneof descriptor does not belong to this message. +func (x *fastReflection_IndexValue) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor { + switch d.FullName() { + case "cosmos.orm.query.v1alpha1.IndexValue.value": + if x.Value == nil { + return nil + } + switch x.Value.(type) { + case *IndexValue_Uint: + return x.Descriptor().Fields().ByName("uint") + case *IndexValue_Int: + return x.Descriptor().Fields().ByName("int") + case *IndexValue_Str: + return x.Descriptor().Fields().ByName("str") + case *IndexValue_Bytes: + return x.Descriptor().Fields().ByName("bytes") + case *IndexValue_Enum: + return x.Descriptor().Fields().ByName("enum") + case *IndexValue_Bool: + return x.Descriptor().Fields().ByName("bool") + case *IndexValue_Timestamp: + return x.Descriptor().Fields().ByName("timestamp") + case *IndexValue_Duration: + return x.Descriptor().Fields().ByName("duration") + } + default: + panic(fmt.Errorf("%s is not a oneof field in cosmos.orm.query.v1alpha1.IndexValue", d.FullName())) + } + panic("unreachable") +} + +// GetUnknown retrieves the entire list of unknown fields. +// The caller may only mutate the contents of the RawFields +// if the mutated bytes are stored back into the message with SetUnknown. +func (x *fastReflection_IndexValue) GetUnknown() protoreflect.RawFields { + return x.unknownFields +} + +// SetUnknown stores an entire list of unknown fields. +// The raw fields must be syntactically valid according to the wire format. +// An implementation may panic if this is not the case. +// Once stored, the caller must not mutate the content of the RawFields. +// An empty RawFields may be passed to clear the fields. +// +// SetUnknown is a mutating operation and unsafe for concurrent use. +func (x *fastReflection_IndexValue) SetUnknown(fields protoreflect.RawFields) { + x.unknownFields = fields +} + +// IsValid reports whether the message is valid. +// +// An invalid message is an empty, read-only value. +// +// An invalid message often corresponds to a nil pointer of the concrete +// message type, but the details are implementation dependent. +// Validity is not part of the protobuf data model, and may not +// be preserved in marshaling or other operations. +func (x *fastReflection_IndexValue) IsValid() bool { + return x != nil +} + +// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations. +// This method may return nil. +// +// The returned methods type is identical to +// "google.golang.org/protobuf/runtime/protoiface".Methods. +// Consult the protoiface package documentation for details. +func (x *fastReflection_IndexValue) ProtoMethods() *protoiface.Methods { + size := func(input protoiface.SizeInput) protoiface.SizeOutput { + x := input.Message.Interface().(*IndexValue) + if x == nil { + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: 0, + } + } + options := runtime.SizeInputToOptions(input) + _ = options + var n int + var l int + _ = l + switch x := x.Value.(type) { + case *IndexValue_Uint: + if x == nil { + break + } + n += 1 + runtime.Sov(uint64(x.Uint)) + case *IndexValue_Int: + if x == nil { + break + } + n += 1 + runtime.Sov(uint64(x.Int)) + case *IndexValue_Str: + if x == nil { + break + } + l = len(x.Str) + n += 1 + l + runtime.Sov(uint64(l)) + case *IndexValue_Bytes: + if x == nil { + break + } + l = len(x.Bytes) + n += 1 + l + runtime.Sov(uint64(l)) + case *IndexValue_Enum: + if x == nil { + break + } + l = len(x.Enum) + n += 1 + l + runtime.Sov(uint64(l)) + case *IndexValue_Bool: + if x == nil { + break + } + n += 2 + case *IndexValue_Timestamp: + if x == nil { + break + } + l = options.Size(x.Timestamp) + n += 1 + l + runtime.Sov(uint64(l)) + case *IndexValue_Duration: + if x == nil { + break + } + l = options.Size(x.Duration) + n += 1 + l + runtime.Sov(uint64(l)) + } + if x.unknownFields != nil { + n += len(x.unknownFields) + } + return protoiface.SizeOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Size: n, + } + } + + marshal := func(input protoiface.MarshalInput) (protoiface.MarshalOutput, error) { + x := input.Message.Interface().(*IndexValue) + if x == nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + options := runtime.MarshalInputToOptions(input) + _ = options + size := options.Size(x) + dAtA := make([]byte, size) + i := len(dAtA) + _ = i + var l int + _ = l + if x.unknownFields != nil { + i -= len(x.unknownFields) + copy(dAtA[i:], x.unknownFields) + } + switch x := x.Value.(type) { + case *IndexValue_Uint: + i = runtime.EncodeVarint(dAtA, i, uint64(x.Uint)) + i-- + dAtA[i] = 0x8 + case *IndexValue_Int: + i = runtime.EncodeVarint(dAtA, i, uint64(x.Int)) + i-- + dAtA[i] = 0x10 + case *IndexValue_Str: + i -= len(x.Str) + copy(dAtA[i:], x.Str) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Str))) + i-- + dAtA[i] = 0x1a + case *IndexValue_Bytes: + i -= len(x.Bytes) + copy(dAtA[i:], x.Bytes) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Bytes))) + i-- + dAtA[i] = 0x22 + case *IndexValue_Enum: + i -= len(x.Enum) + copy(dAtA[i:], x.Enum) + i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Enum))) + i-- + dAtA[i] = 0x2a + case *IndexValue_Bool: + i-- + if x.Bool { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x30 + case *IndexValue_Timestamp: + encoded, err := options.Marshal(x.Timestamp) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0x3a + case *IndexValue_Duration: + encoded, err := options.Marshal(x.Duration) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0x42 + } + if input.Buf != nil { + input.Buf = append(input.Buf, dAtA...) + } else { + input.Buf = dAtA + } + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, nil + } + unmarshal := func(input protoiface.UnmarshalInput) (protoiface.UnmarshalOutput, error) { + x := input.Message.Interface().(*IndexValue) + if x == nil { + return protoiface.UnmarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Flags: input.Flags, + }, nil + } + options := runtime.UnmarshalInputToOptions(input) + _ = options + dAtA := input.Buf + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: IndexValue: wiretype end group for non-group") + } + if fieldNum <= 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: IndexValue: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Uint", wireType) + } + var v uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + x.Value = &IndexValue_Uint{v} + case 2: + if wireType != 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Int", wireType) + } + var v int64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int64(b&0x7F) << shift + if b < 0x80 { + break + } + } + x.Value = &IndexValue_Int{v} + case 3: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Str", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.Value = &IndexValue_Str{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex + case 4: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Bytes", wireType) + } + var byteLen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + byteLen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if byteLen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + byteLen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + v := make([]byte, postIndex-iNdEx) + copy(v, dAtA[iNdEx:postIndex]) + x.Value = &IndexValue_Bytes{v} + iNdEx = postIndex + case 5: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Enum", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + x.Value = &IndexValue_Enum{string(dAtA[iNdEx:postIndex])} + iNdEx = postIndex + case 6: + if wireType != 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Bool", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + b := bool(v != 0) + x.Value = &IndexValue_Bool{b} + case 7: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Timestamp", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + v := ×tamppb.Timestamp{} + if err := options.Unmarshal(dAtA[iNdEx:postIndex], v); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + x.Value = &IndexValue_Timestamp{v} + iNdEx = postIndex + case 8: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Duration", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + v := &durationpb.Duration{} + if err := options.Unmarshal(dAtA[iNdEx:postIndex], v); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + x.Value = &IndexValue_Duration{v} + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := runtime.Skip(dAtA[iNdEx:]) + if err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if (iNdEx + skippy) > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if !options.DiscardUnknown { + x.unknownFields = append(x.unknownFields, dAtA[iNdEx:iNdEx+skippy]...) + } + iNdEx += skippy + } + } + + if iNdEx > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, nil + } + return &protoiface.Methods{ + NoUnkeyedLiterals: struct{}{}, + Flags: protoiface.SupportMarshalDeterministic | protoiface.SupportUnmarshalDiscardUnknown, + Size: size, + Marshal: marshal, + Unmarshal: unmarshal, + Merge: nil, + CheckInitialized: nil, + } +} + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.27.0 +// protoc (unknown) +// source: cosmos/orm/query/v1alpha1/query.proto + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +// GetRequest is the Query/Get request type. +type GetRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // message_name is the fully-qualified message name of the ORM table being queried. + MessageName string `protobuf:"bytes,1,opt,name=message_name,json=messageName,proto3" json:"message_name,omitempty"` + // index is the index fields expression used in orm definitions. If it + // is empty, the table's primary key is assumed. If it is non-empty, it must + // refer to an unique index. + Index string `protobuf:"bytes,2,opt,name=index,proto3" json:"index,omitempty"` + // values are the values of the fields corresponding to the requested index. + // There must be as many values provided as there are fields in the index and + // these values must correspond to the index field types. + Values []*IndexValue `protobuf:"bytes,3,rep,name=values,proto3" json:"values,omitempty"` +} + +func (x *GetRequest) Reset() { + *x = GetRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_cosmos_orm_query_v1alpha1_query_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetRequest) ProtoMessage() {} + +// Deprecated: Use GetRequest.ProtoReflect.Descriptor instead. +func (*GetRequest) Descriptor() ([]byte, []int) { + return file_cosmos_orm_query_v1alpha1_query_proto_rawDescGZIP(), []int{0} +} + +func (x *GetRequest) GetMessageName() string { + if x != nil { + return x.MessageName + } + return "" +} + +func (x *GetRequest) GetIndex() string { + if x != nil { + return x.Index + } + return "" +} + +func (x *GetRequest) GetValues() []*IndexValue { + if x != nil { + return x.Values + } + return nil +} + +// GetResponse is the Query/Get response type. +type GetResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // result is the result of the get query. If no value is found, the gRPC + // status code NOT_FOUND will be returned. + Result *anypb.Any `protobuf:"bytes,1,opt,name=result,proto3" json:"result,omitempty"` +} + +func (x *GetResponse) Reset() { + *x = GetResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_cosmos_orm_query_v1alpha1_query_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetResponse) ProtoMessage() {} + +// Deprecated: Use GetResponse.ProtoReflect.Descriptor instead. +func (*GetResponse) Descriptor() ([]byte, []int) { + return file_cosmos_orm_query_v1alpha1_query_proto_rawDescGZIP(), []int{1} +} + +func (x *GetResponse) GetResult() *anypb.Any { + if x != nil { + return x.Result + } + return nil +} + +// ListRequest is the Query/List request type. +type ListRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // message_name is the fully-qualified message name of the ORM table being queried. + MessageName string `protobuf:"bytes,1,opt,name=message_name,json=messageName,proto3" json:"message_name,omitempty"` + // index is the index fields expression used in orm definitions. If it + // is empty, the table's primary key is assumed. + Index string `protobuf:"bytes,2,opt,name=index,proto3" json:"index,omitempty"` + // query is the query expression corresponding to the provided index. If + // neither prefix nor range is specified, the query will list all the fields + // in the index. + // + // Types that are assignable to Query: + // *ListRequest_Prefix_ + // *ListRequest_Range_ + Query isListRequest_Query `protobuf_oneof:"query"` + // pagination is the pagination request. + Pagination *v1beta1.PageRequest `protobuf:"bytes,5,opt,name=pagination,proto3" json:"pagination,omitempty"` +} + +func (x *ListRequest) Reset() { + *x = ListRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_cosmos_orm_query_v1alpha1_query_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ListRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ListRequest) ProtoMessage() {} + +// Deprecated: Use ListRequest.ProtoReflect.Descriptor instead. +func (*ListRequest) Descriptor() ([]byte, []int) { + return file_cosmos_orm_query_v1alpha1_query_proto_rawDescGZIP(), []int{2} +} + +func (x *ListRequest) GetMessageName() string { + if x != nil { + return x.MessageName + } + return "" +} + +func (x *ListRequest) GetIndex() string { + if x != nil { + return x.Index + } + return "" +} + +func (x *ListRequest) GetQuery() isListRequest_Query { + if x != nil { + return x.Query + } + return nil +} + +func (x *ListRequest) GetPrefix() *ListRequest_Prefix { + if x, ok := x.GetQuery().(*ListRequest_Prefix_); ok { + return x.Prefix + } + return nil +} + +func (x *ListRequest) GetRange_() *ListRequest_Range { + if x, ok := x.GetQuery().(*ListRequest_Range_); ok { + return x.Range_ + } + return nil +} + +func (x *ListRequest) GetPagination() *v1beta1.PageRequest { + if x != nil { + return x.Pagination + } + return nil +} + +type isListRequest_Query interface { + isListRequest_Query() +} + +type ListRequest_Prefix_ struct { + // prefix defines a prefix query. + Prefix *ListRequest_Prefix `protobuf:"bytes,3,opt,name=prefix,proto3,oneof"` +} + +type ListRequest_Range_ struct { + // range defines a range query. + Range_ *ListRequest_Range `protobuf:"bytes,4,opt,name=range,proto3,oneof"` +} + +func (*ListRequest_Prefix_) isListRequest_Query() {} + +func (*ListRequest_Range_) isListRequest_Query() {} + +// ListResponse is the Query/List response type. +type ListResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // results are the results of the query. + Results []*anypb.Any `protobuf:"bytes,1,rep,name=results,proto3" json:"results,omitempty"` + // pagination is the pagination response. + Pagination *v1beta1.PageResponse `protobuf:"bytes,5,opt,name=pagination,proto3" json:"pagination,omitempty"` +} + +func (x *ListResponse) Reset() { + *x = ListResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_cosmos_orm_query_v1alpha1_query_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ListResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ListResponse) ProtoMessage() {} + +// Deprecated: Use ListResponse.ProtoReflect.Descriptor instead. +func (*ListResponse) Descriptor() ([]byte, []int) { + return file_cosmos_orm_query_v1alpha1_query_proto_rawDescGZIP(), []int{3} +} + +func (x *ListResponse) GetResults() []*anypb.Any { + if x != nil { + return x.Results + } + return nil +} + +func (x *ListResponse) GetPagination() *v1beta1.PageResponse { + if x != nil { + return x.Pagination + } + return nil +} + +// IndexValue represents the value of a field in an ORM index expression. +type IndexValue struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // value specifies the index value + // + // Types that are assignable to Value: + // *IndexValue_Uint + // *IndexValue_Int + // *IndexValue_Str + // *IndexValue_Bytes + // *IndexValue_Enum + // *IndexValue_Bool + // *IndexValue_Timestamp + // *IndexValue_Duration + Value isIndexValue_Value `protobuf_oneof:"value"` +} + +func (x *IndexValue) Reset() { + *x = IndexValue{} + if protoimpl.UnsafeEnabled { + mi := &file_cosmos_orm_query_v1alpha1_query_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *IndexValue) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*IndexValue) ProtoMessage() {} + +// Deprecated: Use IndexValue.ProtoReflect.Descriptor instead. +func (*IndexValue) Descriptor() ([]byte, []int) { + return file_cosmos_orm_query_v1alpha1_query_proto_rawDescGZIP(), []int{4} +} + +func (x *IndexValue) GetValue() isIndexValue_Value { + if x != nil { + return x.Value + } + return nil +} + +func (x *IndexValue) GetUint() uint64 { + if x, ok := x.GetValue().(*IndexValue_Uint); ok { + return x.Uint + } + return 0 +} + +func (x *IndexValue) GetInt() int64 { + if x, ok := x.GetValue().(*IndexValue_Int); ok { + return x.Int + } + return 0 +} + +func (x *IndexValue) GetStr() string { + if x, ok := x.GetValue().(*IndexValue_Str); ok { + return x.Str + } + return "" +} + +func (x *IndexValue) GetBytes() []byte { + if x, ok := x.GetValue().(*IndexValue_Bytes); ok { + return x.Bytes + } + return nil +} + +func (x *IndexValue) GetEnum() string { + if x, ok := x.GetValue().(*IndexValue_Enum); ok { + return x.Enum + } + return "" +} + +func (x *IndexValue) GetBool() bool { + if x, ok := x.GetValue().(*IndexValue_Bool); ok { + return x.Bool + } + return false +} + +func (x *IndexValue) GetTimestamp() *timestamppb.Timestamp { + if x, ok := x.GetValue().(*IndexValue_Timestamp); ok { + return x.Timestamp + } + return nil +} + +func (x *IndexValue) GetDuration() *durationpb.Duration { + if x, ok := x.GetValue().(*IndexValue_Duration); ok { + return x.Duration + } + return nil +} + +type isIndexValue_Value interface { + isIndexValue_Value() +} + +type IndexValue_Uint struct { + // uint specifies a value for an uint32, fixed32, uint64, or fixed64 + // index field. + Uint uint64 `protobuf:"varint,1,opt,name=uint,proto3,oneof"` +} + +type IndexValue_Int struct { + // int64 specifies a value for an int32, sfixed32, int64, or sfixed64 + // index field. + Int int64 `protobuf:"varint,2,opt,name=int,proto3,oneof"` +} + +type IndexValue_Str struct { + // str specifies a value for a string index field. + Str string `protobuf:"bytes,3,opt,name=str,proto3,oneof"` +} + +type IndexValue_Bytes struct { + // bytes specifies a value for a bytes index field. + Bytes []byte `protobuf:"bytes,4,opt,name=bytes,proto3,oneof"` +} + +type IndexValue_Enum struct { + // enum specifies a value for an enum index field. + Enum string `protobuf:"bytes,5,opt,name=enum,proto3,oneof"` +} + +type IndexValue_Bool struct { + // bool specifies a value for a bool index field. + Bool bool `protobuf:"varint,6,opt,name=bool,proto3,oneof"` +} + +type IndexValue_Timestamp struct { + // timestamp specifies a value for a timestamp index field. + Timestamp *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=timestamp,proto3,oneof"` +} + +type IndexValue_Duration struct { + // duration specifies a value for a duration index field. + Duration *durationpb.Duration `protobuf:"bytes,8,opt,name=duration,proto3,oneof"` +} + +func (*IndexValue_Uint) isIndexValue_Value() {} + +func (*IndexValue_Int) isIndexValue_Value() {} + +func (*IndexValue_Str) isIndexValue_Value() {} + +func (*IndexValue_Bytes) isIndexValue_Value() {} + +func (*IndexValue_Enum) isIndexValue_Value() {} + +func (*IndexValue_Bool) isIndexValue_Value() {} + +func (*IndexValue_Timestamp) isIndexValue_Value() {} + +func (*IndexValue_Duration) isIndexValue_Value() {} + +// Prefix specifies the arguments to a prefix query. +type ListRequest_Prefix struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // values specifies the index values for the prefix query. + // It is valid to special a partial prefix with fewer values than + // the number of fields in the index. + Values []*IndexValue `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"` +} + +func (x *ListRequest_Prefix) Reset() { + *x = ListRequest_Prefix{} + if protoimpl.UnsafeEnabled { + mi := &file_cosmos_orm_query_v1alpha1_query_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ListRequest_Prefix) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ListRequest_Prefix) ProtoMessage() {} + +// Deprecated: Use ListRequest_Prefix.ProtoReflect.Descriptor instead. +func (*ListRequest_Prefix) Descriptor() ([]byte, []int) { + return file_cosmos_orm_query_v1alpha1_query_proto_rawDescGZIP(), []int{2, 0} +} + +func (x *ListRequest_Prefix) GetValues() []*IndexValue { + if x != nil { + return x.Values + } + return nil +} + +// Range specifies the arguments to a range query. +type ListRequest_Range struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // start specifies the starting index values for the range query. + // It is valid to provide fewer values than the number of fields in the + // index. + Start []*IndexValue `protobuf:"bytes,1,rep,name=start,proto3" json:"start,omitempty"` + // end specifies the inclusive ending index values for the range query. + // It is valid to provide fewer values than the number of fields in the + // index. + End []*IndexValue `protobuf:"bytes,2,rep,name=end,proto3" json:"end,omitempty"` +} + +func (x *ListRequest_Range) Reset() { + *x = ListRequest_Range{} + if protoimpl.UnsafeEnabled { + mi := &file_cosmos_orm_query_v1alpha1_query_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ListRequest_Range) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ListRequest_Range) ProtoMessage() {} + +// Deprecated: Use ListRequest_Range.ProtoReflect.Descriptor instead. +func (*ListRequest_Range) Descriptor() ([]byte, []int) { + return file_cosmos_orm_query_v1alpha1_query_proto_rawDescGZIP(), []int{2, 1} +} + +func (x *ListRequest_Range) GetStart() []*IndexValue { + if x != nil { + return x.Start + } + return nil +} + +func (x *ListRequest_Range) GetEnd() []*IndexValue { + if x != nil { + return x.End + } + return nil +} + +var File_cosmos_orm_query_v1alpha1_query_proto protoreflect.FileDescriptor + +var file_cosmos_orm_query_v1alpha1_query_proto_rawDesc = []byte{ + 0x0a, 0x25, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x6f, 0x72, 0x6d, 0x2f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x19, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, + 0x6f, 0x72, 0x6d, 0x2e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, + 0x61, 0x31, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x61, 0x6e, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2a, + 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x62, 0x61, 0x73, 0x65, 0x2f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x84, 0x01, 0x0a, 0x0a, 0x47, + 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, + 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x69, 0x6e, 0x64, + 0x65, 0x78, 0x12, 0x3d, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x6f, 0x72, 0x6d, 0x2e, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x49, + 0x6e, 0x64, 0x65, 0x78, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x73, 0x22, 0x3b, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x2c, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x22, 0xee, + 0x03, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x21, + 0x0a, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x47, 0x0a, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, + 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, + 0x2e, 0x6f, 0x72, 0x6d, 0x2e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, + 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x48, 0x00, 0x52, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, + 0x12, 0x44, 0x0a, 0x05, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x2c, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x6f, 0x72, 0x6d, 0x2e, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x48, 0x00, 0x52, + 0x05, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x46, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x63, 0x6f, 0x73, + 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, + 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x47, + 0x0a, 0x06, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x3d, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, + 0x73, 0x2e, 0x6f, 0x72, 0x6d, 0x2e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, + 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x1a, 0x7d, 0x0a, 0x05, 0x52, 0x61, 0x6e, 0x67, 0x65, + 0x12, 0x3b, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x25, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x6f, 0x72, 0x6d, 0x2e, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x64, 0x65, + 0x78, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0x37, 0x0a, + 0x03, 0x65, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x63, 0x6f, 0x73, + 0x6d, 0x6f, 0x73, 0x2e, 0x6f, 0x72, 0x6d, 0x2e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x52, 0x03, 0x65, 0x6e, 0x64, 0x42, 0x07, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x22, + 0x87, 0x01, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x2e, 0x0a, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x52, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, + 0x12, 0x47, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x61, + 0x73, 0x65, 0x2e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, + 0x2e, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0a, 0x70, + 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x8c, 0x02, 0x0a, 0x0a, 0x49, 0x6e, + 0x64, 0x65, 0x78, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x14, 0x0a, 0x04, 0x75, 0x69, 0x6e, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x04, 0x75, 0x69, 0x6e, 0x74, 0x12, 0x12, + 0x0a, 0x03, 0x69, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x48, 0x00, 0x52, 0x03, 0x69, + 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x03, 0x73, 0x74, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, + 0x00, 0x52, 0x03, 0x73, 0x74, 0x72, 0x12, 0x16, 0x0a, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x12, 0x14, + 0x0a, 0x04, 0x65, 0x6e, 0x75, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x04, + 0x65, 0x6e, 0x75, 0x6d, 0x12, 0x14, 0x0a, 0x04, 0x62, 0x6f, 0x6f, 0x6c, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x08, 0x48, 0x00, 0x52, 0x04, 0x62, 0x6f, 0x6f, 0x6c, 0x12, 0x3a, 0x0a, 0x09, 0x74, 0x69, + 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, + 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x48, 0x00, 0x52, 0x09, 0x74, 0x69, 0x6d, + 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x37, 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, + 0x07, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x32, 0xb6, 0x01, 0x0a, 0x05, 0x51, 0x75, 0x65, + 0x72, 0x79, 0x12, 0x54, 0x0a, 0x03, 0x47, 0x65, 0x74, 0x12, 0x25, 0x2e, 0x63, 0x6f, 0x73, 0x6d, + 0x6f, 0x73, 0x2e, 0x6f, 0x72, 0x6d, 0x2e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x26, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x6f, 0x72, 0x6d, 0x2e, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x57, 0x0a, 0x04, 0x4c, 0x69, 0x73, 0x74, + 0x12, 0x26, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x6f, 0x72, 0x6d, 0x2e, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, + 0x73, 0x2e, 0x6f, 0x72, 0x6d, 0x2e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x42, 0xec, 0x01, 0x0a, 0x1d, 0x63, 0x6f, 0x6d, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, + 0x2e, 0x6f, 0x72, 0x6d, 0x2e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x31, 0x42, 0x0a, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, + 0x01, 0x5a, 0x38, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, + 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x6f, 0x72, 0x6d, 0x2f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x3b, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xa2, 0x02, 0x03, 0x43, 0x4f, + 0x51, 0xaa, 0x02, 0x19, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x4f, 0x72, 0x6d, 0x2e, 0x51, + 0x75, 0x65, 0x72, 0x79, 0x2e, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xca, 0x02, 0x19, + 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x5c, 0x4f, 0x72, 0x6d, 0x5c, 0x51, 0x75, 0x65, 0x72, 0x79, + 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xe2, 0x02, 0x25, 0x43, 0x6f, 0x73, 0x6d, + 0x6f, 0x73, 0x5c, 0x4f, 0x72, 0x6d, 0x5c, 0x51, 0x75, 0x65, 0x72, 0x79, 0x5c, 0x56, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, + 0x61, 0xea, 0x02, 0x1c, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x3a, 0x3a, 0x4f, 0x72, 0x6d, 0x3a, + 0x3a, 0x51, 0x75, 0x65, 0x72, 0x79, 0x3a, 0x3a, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, + 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_cosmos_orm_query_v1alpha1_query_proto_rawDescOnce sync.Once + file_cosmos_orm_query_v1alpha1_query_proto_rawDescData = file_cosmos_orm_query_v1alpha1_query_proto_rawDesc +) + +func file_cosmos_orm_query_v1alpha1_query_proto_rawDescGZIP() []byte { + file_cosmos_orm_query_v1alpha1_query_proto_rawDescOnce.Do(func() { + file_cosmos_orm_query_v1alpha1_query_proto_rawDescData = protoimpl.X.CompressGZIP(file_cosmos_orm_query_v1alpha1_query_proto_rawDescData) + }) + return file_cosmos_orm_query_v1alpha1_query_proto_rawDescData +} + +var file_cosmos_orm_query_v1alpha1_query_proto_msgTypes = make([]protoimpl.MessageInfo, 7) +var file_cosmos_orm_query_v1alpha1_query_proto_goTypes = []interface{}{ + (*GetRequest)(nil), // 0: cosmos.orm.query.v1alpha1.GetRequest + (*GetResponse)(nil), // 1: cosmos.orm.query.v1alpha1.GetResponse + (*ListRequest)(nil), // 2: cosmos.orm.query.v1alpha1.ListRequest + (*ListResponse)(nil), // 3: cosmos.orm.query.v1alpha1.ListResponse + (*IndexValue)(nil), // 4: cosmos.orm.query.v1alpha1.IndexValue + (*ListRequest_Prefix)(nil), // 5: cosmos.orm.query.v1alpha1.ListRequest.Prefix + (*ListRequest_Range)(nil), // 6: cosmos.orm.query.v1alpha1.ListRequest.Range + (*anypb.Any)(nil), // 7: google.protobuf.Any + (*v1beta1.PageRequest)(nil), // 8: cosmos.base.query.v1beta1.PageRequest + (*v1beta1.PageResponse)(nil), // 9: cosmos.base.query.v1beta1.PageResponse + (*timestamppb.Timestamp)(nil), // 10: google.protobuf.Timestamp + (*durationpb.Duration)(nil), // 11: google.protobuf.Duration +} +var file_cosmos_orm_query_v1alpha1_query_proto_depIdxs = []int32{ + 4, // 0: cosmos.orm.query.v1alpha1.GetRequest.values:type_name -> cosmos.orm.query.v1alpha1.IndexValue + 7, // 1: cosmos.orm.query.v1alpha1.GetResponse.result:type_name -> google.protobuf.Any + 5, // 2: cosmos.orm.query.v1alpha1.ListRequest.prefix:type_name -> cosmos.orm.query.v1alpha1.ListRequest.Prefix + 6, // 3: cosmos.orm.query.v1alpha1.ListRequest.range:type_name -> cosmos.orm.query.v1alpha1.ListRequest.Range + 8, // 4: cosmos.orm.query.v1alpha1.ListRequest.pagination:type_name -> cosmos.base.query.v1beta1.PageRequest + 7, // 5: cosmos.orm.query.v1alpha1.ListResponse.results:type_name -> google.protobuf.Any + 9, // 6: cosmos.orm.query.v1alpha1.ListResponse.pagination:type_name -> cosmos.base.query.v1beta1.PageResponse + 10, // 7: cosmos.orm.query.v1alpha1.IndexValue.timestamp:type_name -> google.protobuf.Timestamp + 11, // 8: cosmos.orm.query.v1alpha1.IndexValue.duration:type_name -> google.protobuf.Duration + 4, // 9: cosmos.orm.query.v1alpha1.ListRequest.Prefix.values:type_name -> cosmos.orm.query.v1alpha1.IndexValue + 4, // 10: cosmos.orm.query.v1alpha1.ListRequest.Range.start:type_name -> cosmos.orm.query.v1alpha1.IndexValue + 4, // 11: cosmos.orm.query.v1alpha1.ListRequest.Range.end:type_name -> cosmos.orm.query.v1alpha1.IndexValue + 0, // 12: cosmos.orm.query.v1alpha1.Query.Get:input_type -> cosmos.orm.query.v1alpha1.GetRequest + 2, // 13: cosmos.orm.query.v1alpha1.Query.List:input_type -> cosmos.orm.query.v1alpha1.ListRequest + 1, // 14: cosmos.orm.query.v1alpha1.Query.Get:output_type -> cosmos.orm.query.v1alpha1.GetResponse + 3, // 15: cosmos.orm.query.v1alpha1.Query.List:output_type -> cosmos.orm.query.v1alpha1.ListResponse + 14, // [14:16] is the sub-list for method output_type + 12, // [12:14] is the sub-list for method input_type + 12, // [12:12] is the sub-list for extension type_name + 12, // [12:12] is the sub-list for extension extendee + 0, // [0:12] is the sub-list for field type_name +} + +func init() { file_cosmos_orm_query_v1alpha1_query_proto_init() } +func file_cosmos_orm_query_v1alpha1_query_proto_init() { + if File_cosmos_orm_query_v1alpha1_query_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_cosmos_orm_query_v1alpha1_query_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_cosmos_orm_query_v1alpha1_query_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_cosmos_orm_query_v1alpha1_query_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_cosmos_orm_query_v1alpha1_query_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_cosmos_orm_query_v1alpha1_query_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*IndexValue); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_cosmos_orm_query_v1alpha1_query_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListRequest_Prefix); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_cosmos_orm_query_v1alpha1_query_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListRequest_Range); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + file_cosmos_orm_query_v1alpha1_query_proto_msgTypes[2].OneofWrappers = []interface{}{ + (*ListRequest_Prefix_)(nil), + (*ListRequest_Range_)(nil), + } + file_cosmos_orm_query_v1alpha1_query_proto_msgTypes[4].OneofWrappers = []interface{}{ + (*IndexValue_Uint)(nil), + (*IndexValue_Int)(nil), + (*IndexValue_Str)(nil), + (*IndexValue_Bytes)(nil), + (*IndexValue_Enum)(nil), + (*IndexValue_Bool)(nil), + (*IndexValue_Timestamp)(nil), + (*IndexValue_Duration)(nil), + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_cosmos_orm_query_v1alpha1_query_proto_rawDesc, + NumEnums: 0, + NumMessages: 7, + NumExtensions: 0, + NumServices: 1, + }, + GoTypes: file_cosmos_orm_query_v1alpha1_query_proto_goTypes, + DependencyIndexes: file_cosmos_orm_query_v1alpha1_query_proto_depIdxs, + MessageInfos: file_cosmos_orm_query_v1alpha1_query_proto_msgTypes, + }.Build() + File_cosmos_orm_query_v1alpha1_query_proto = out.File + file_cosmos_orm_query_v1alpha1_query_proto_rawDesc = nil + file_cosmos_orm_query_v1alpha1_query_proto_goTypes = nil + file_cosmos_orm_query_v1alpha1_query_proto_depIdxs = nil +} diff --git a/api/cosmos/orm/query/v1alpha1/query_grpc.pb.go b/api/cosmos/orm/query/v1alpha1/query_grpc.pb.go new file mode 100644 index 0000000000..ce41086614 --- /dev/null +++ b/api/cosmos/orm/query/v1alpha1/query_grpc.pb.go @@ -0,0 +1,145 @@ +// Code generated by protoc-gen-go-grpc. DO NOT EDIT. +// versions: +// - protoc-gen-go-grpc v1.2.0 +// - protoc (unknown) +// source: cosmos/orm/query/v1alpha1/query.proto + +package queryv1alpha1 + +import ( + context "context" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" +) + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +// Requires gRPC-Go v1.32.0 or later. +const _ = grpc.SupportPackageIsVersion7 + +// QueryClient is the client API for Query service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type QueryClient interface { + // Get queries an ORM table against an unique index. + Get(ctx context.Context, in *GetRequest, opts ...grpc.CallOption) (*GetResponse, error) + // List queries an ORM table against an index. + List(ctx context.Context, in *ListRequest, opts ...grpc.CallOption) (*ListResponse, error) +} + +type queryClient struct { + cc grpc.ClientConnInterface +} + +func NewQueryClient(cc grpc.ClientConnInterface) QueryClient { + return &queryClient{cc} +} + +func (c *queryClient) Get(ctx context.Context, in *GetRequest, opts ...grpc.CallOption) (*GetResponse, error) { + out := new(GetResponse) + err := c.cc.Invoke(ctx, "/cosmos.orm.query.v1alpha1.Query/Get", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *queryClient) List(ctx context.Context, in *ListRequest, opts ...grpc.CallOption) (*ListResponse, error) { + out := new(ListResponse) + err := c.cc.Invoke(ctx, "/cosmos.orm.query.v1alpha1.Query/List", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// QueryServer is the server API for Query service. +// All implementations must embed UnimplementedQueryServer +// for forward compatibility +type QueryServer interface { + // Get queries an ORM table against an unique index. + Get(context.Context, *GetRequest) (*GetResponse, error) + // List queries an ORM table against an index. + List(context.Context, *ListRequest) (*ListResponse, error) + mustEmbedUnimplementedQueryServer() +} + +// UnimplementedQueryServer must be embedded to have forward compatible implementations. +type UnimplementedQueryServer struct { +} + +func (UnimplementedQueryServer) Get(context.Context, *GetRequest) (*GetResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Get not implemented") +} +func (UnimplementedQueryServer) List(context.Context, *ListRequest) (*ListResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method List not implemented") +} +func (UnimplementedQueryServer) mustEmbedUnimplementedQueryServer() {} + +// UnsafeQueryServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to QueryServer will +// result in compilation errors. +type UnsafeQueryServer interface { + mustEmbedUnimplementedQueryServer() +} + +func RegisterQueryServer(s grpc.ServiceRegistrar, srv QueryServer) { + s.RegisterService(&Query_ServiceDesc, srv) +} + +func _Query_Get_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(QueryServer).Get(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/cosmos.orm.query.v1alpha1.Query/Get", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).Get(ctx, req.(*GetRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _Query_List_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ListRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(QueryServer).List(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/cosmos.orm.query.v1alpha1.Query/List", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(QueryServer).List(ctx, req.(*ListRequest)) + } + return interceptor(ctx, in, info, handler) +} + +// Query_ServiceDesc is the grpc.ServiceDesc for Query service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var Query_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "cosmos.orm.query.v1alpha1.Query", + HandlerType: (*QueryServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "Get", + Handler: _Query_Get_Handler, + }, + { + MethodName: "List", + Handler: _Query_List_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "cosmos/orm/query/v1alpha1/query.proto", +} diff --git a/proto/cosmos/orm/query/v1alpha1/query.proto b/proto/cosmos/orm/query/v1alpha1/query.proto new file mode 100644 index 0000000000..4500e99d5d --- /dev/null +++ b/proto/cosmos/orm/query/v1alpha1/query.proto @@ -0,0 +1,131 @@ +syntax = "proto3"; + +package cosmos.orm.query.v1alpha1; + +import "google/protobuf/timestamp.proto"; +import "google/protobuf/duration.proto"; +import "google/protobuf/any.proto"; +import "cosmos/base/query/v1beta1/pagination.proto"; + +// Query is a generic gRPC service for querying ORM data. +service Query { + + // Get queries an ORM table against an unique index. + rpc Get(GetRequest) returns (GetResponse); + + // List queries an ORM table against an index. + rpc List(ListRequest) returns (ListResponse); +} + +// GetRequest is the Query/Get request type. +message GetRequest { + // message_name is the fully-qualified message name of the ORM table being queried. + string message_name = 1; + + // index is the index fields expression used in orm definitions. If it + // is empty, the table's primary key is assumed. If it is non-empty, it must + // refer to an unique index. + string index = 2; + + // values are the values of the fields corresponding to the requested index. + // There must be as many values provided as there are fields in the index and + // these values must correspond to the index field types. + repeated IndexValue values = 3; +} + +// GetResponse is the Query/Get response type. +message GetResponse { + + // result is the result of the get query. If no value is found, the gRPC + // status code NOT_FOUND will be returned. + google.protobuf.Any result = 1; +} + +// ListRequest is the Query/List request type. +message ListRequest { + // message_name is the fully-qualified message name of the ORM table being queried. + string message_name = 1; + + // index is the index fields expression used in orm definitions. If it + // is empty, the table's primary key is assumed. + string index = 2; + + // query is the query expression corresponding to the provided index. If + // neither prefix nor range is specified, the query will list all the fields + // in the index. + oneof query { + + // prefix defines a prefix query. + Prefix prefix = 3; + + // range defines a range query. + Range range = 4; + } + + // pagination is the pagination request. + cosmos.base.query.v1beta1.PageRequest pagination = 5; + + // Prefix specifies the arguments to a prefix query. + message Prefix { + // values specifies the index values for the prefix query. + // It is valid to special a partial prefix with fewer values than + // the number of fields in the index. + repeated IndexValue values = 1; + } + + // Range specifies the arguments to a range query. + message Range { + // start specifies the starting index values for the range query. + // It is valid to provide fewer values than the number of fields in the + // index. + repeated IndexValue start = 1; + + // end specifies the inclusive ending index values for the range query. + // It is valid to provide fewer values than the number of fields in the + // index. + repeated IndexValue end = 2; + } +} + +// ListResponse is the Query/List response type. +message ListResponse { + + // results are the results of the query. + repeated google.protobuf.Any results = 1; + + // pagination is the pagination response. + cosmos.base.query.v1beta1.PageResponse pagination = 5; +} + +// IndexValue represents the value of a field in an ORM index expression. +message IndexValue { + + // value specifies the index value + oneof value { + // uint specifies a value for an uint32, fixed32, uint64, or fixed64 + // index field. + uint64 uint = 1; + + // int64 specifies a value for an int32, sfixed32, int64, or sfixed64 + // index field. + int64 int = 2; + + // str specifies a value for a string index field. + string str = 3; + + // bytes specifies a value for a bytes index field. + bytes bytes = 4; + + // enum specifies a value for an enum index field. + string enum = 5; + + // bool specifies a value for a bool index field. + bool bool = 6; + + // timestamp specifies a value for a timestamp index field. + google.protobuf.Timestamp timestamp = 7; + + // duration specifies a value for a duration index field. + google.protobuf.Duration duration = 8; + } +}