diff options
| author | Oskari Timperi <oskari.timperi@iki.fi> | 2018-04-02 12:02:02 +0300 |
|---|---|---|
| committer | Oskari Timperi <oskari.timperi@iki.fi> | 2018-04-02 12:02:02 +0300 |
| commit | 3c9ba205af26ed8d48e68a30932d18d8b64382e0 (patch) | |
| tree | 42488faa1186f7ef8b2681084464b8e962af48b2 /src/protobuf/wkt/struct_pb.nim | |
| parent | ad3061195b5a9af9b3ae576dd591e840ba38669d (diff) | |
| download | nimpb-3c9ba205af26ed8d48e68a30932d18d8b64382e0.tar.gz nimpb-3c9ba205af26ed8d48e68a30932d18d8b64382e0.zip | |
Update well known types
Diffstat (limited to 'src/protobuf/wkt/struct_pb.nim')
| -rw-r--r-- | src/protobuf/wkt/struct_pb.nim | 33 |
1 files changed, 27 insertions, 6 deletions
diff --git a/src/protobuf/wkt/struct_pb.nim b/src/protobuf/wkt/struct_pb.nim index 7508db4..9b272d2 100644 --- a/src/protobuf/wkt/struct_pb.nim +++ b/src/protobuf/wkt/struct_pb.nim @@ -49,6 +49,9 @@ proc newgoogle_protobuf_Struct_FieldsEntry*(): google_protobuf_Struct_FieldsEntr proc writegoogle_protobuf_Struct_FieldsEntry*(stream: ProtobufStream, message: google_protobuf_Struct_FieldsEntry) proc readgoogle_protobuf_Struct_FieldsEntry*(stream: ProtobufStream): google_protobuf_Struct_FieldsEntry proc sizeOfgoogle_protobuf_Struct_FieldsEntry*(message: google_protobuf_Struct_FieldsEntry): uint64 +proc writegoogle_protobuf_Struct_FieldsEntryKV(stream: ProtobufStream, key: string, value: google_protobuf_Value) +proc readgoogle_protobuf_Struct_FieldsEntryKV(stream: ProtobufStream, tbl: TableRef[string, google_protobuf_Value]) +proc sizeOfgoogle_protobuf_Struct_FieldsEntryKV(key: string, value: google_protobuf_Value): uint64 proc newgoogle_protobuf_Struct*(): google_protobuf_Struct proc writegoogle_protobuf_Struct*(stream: ProtobufStream, message: google_protobuf_Struct) @@ -137,7 +140,7 @@ proc readgoogle_protobuf_Struct_FieldsEntryKV(stream: ProtobufStream, tbl: Table of 2: let size = readVarint(stream) - data = readStr(stream, int(size)) + data = safeReadStr(stream, int(size)) pbs = newProtobufStream(newStringStream(data)) value = readgoogle_protobuf_Value(pbs) gotValue = true @@ -177,12 +180,16 @@ proc readgoogle_protobuf_Struct_FieldsEntry*(stream: ProtobufStream): google_pro tag = readTag(stream) wireType = getTagWireType(tag) case getTagFieldNumber(tag) + of 0: + raise newException(InvalidFieldNumberError, "Invalid field number: 0") of 1: + expectWireType(wireType, WireType.LengthDelimited) setkey(result, readString(stream)) of 2: + expectWireType(wireType, WireType.LengthDelimited) let size = readVarint(stream) - data = readStr(stream, int(size)) + data = safeReadStr(stream, int(size)) pbs = newProtobufStream(newStringStream(data)) setvalue(result, readgoogle_protobuf_Value(pbs)) else: skipField(stream, wireType) @@ -244,10 +251,13 @@ proc readgoogle_protobuf_Struct*(stream: ProtobufStream): google_protobuf_Struct tag = readTag(stream) wireType = getTagWireType(tag) case getTagFieldNumber(tag) + of 0: + raise newException(InvalidFieldNumberError, "Invalid field number: 0") of 1: + expectWireType(wireType, WireType.LengthDelimited) let size = readVarint(stream) - data = readStr(stream, int(size)) + data = safeReadStr(stream, int(size)) pbs = newProtobufStream(newStringStream(data)) readgoogle_protobuf_Struct_FieldsEntryKV(pbs, result.fields) else: skipField(stream, wireType) @@ -314,10 +324,13 @@ proc readgoogle_protobuf_ListValue*(stream: ProtobufStream): google_protobuf_Lis tag = readTag(stream) wireType = getTagWireType(tag) case getTagFieldNumber(tag) + of 0: + raise newException(InvalidFieldNumberError, "Invalid field number: 0") of 1: + expectWireType(wireType, WireType.LengthDelimited) let size = readVarint(stream) - data = readStr(stream, int(size)) + data = safeReadStr(stream, int(size)) pbs = newProtobufStream(newStringStream(data)) addvalues(result, readgoogle_protobuf_Value(pbs)) else: skipField(stream, wireType) @@ -571,24 +584,32 @@ proc readgoogle_protobuf_Value*(stream: ProtobufStream): google_protobuf_Value = tag = readTag(stream) wireType = getTagWireType(tag) case getTagFieldNumber(tag) + of 0: + raise newException(InvalidFieldNumberError, "Invalid field number: 0") of 1: + expectWireType(wireType, WireType.Varint) setnull_value(result, readgoogle_protobuf_NullValue(stream)) of 2: + expectWireType(wireType, WireType.Fixed64) setnumber_value(result, readDouble(stream)) of 3: + expectWireType(wireType, WireType.LengthDelimited) setstring_value(result, readString(stream)) of 4: + expectWireType(wireType, WireType.Varint) setbool_value(result, readBool(stream)) of 5: + expectWireType(wireType, WireType.LengthDelimited) let size = readVarint(stream) - data = readStr(stream, int(size)) + data = safeReadStr(stream, int(size)) pbs = newProtobufStream(newStringStream(data)) setstruct_value(result, readgoogle_protobuf_Struct(pbs)) of 6: + expectWireType(wireType, WireType.LengthDelimited) let size = readVarint(stream) - data = readStr(stream, int(size)) + data = safeReadStr(stream, int(size)) pbs = newProtobufStream(newStringStream(data)) setlist_value(result, readgoogle_protobuf_ListValue(pbs)) else: skipField(stream, wireType) |
