diff options
| author | Oskari Timperi <oswjk@users.noreply.github.com> | 2018-10-10 20:04:45 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-10-10 20:04:45 -0700 |
| commit | a55eb0b8a6efa097ad2e9a2be628229c86c24b7f (patch) | |
| tree | 7ee6c465a2d3268ba164329f60d66519b8c12f01 | |
| parent | 4220eb1d41751d6dd74e6196bd122b12e434f968 (diff) | |
| parent | 050616f9417794568c8b194c4c124ec6d9a5f4cd (diff) | |
| download | nimpb-a55eb0b8a6efa097ad2e9a2be628229c86c24b7f.tar.gz nimpb-a55eb0b8a6efa097ad2e9a2be628229c86c24b7f.zip | |
Merge pull request #10 from oswjk/fixes-for-nim-0.19
Small fixes for Nim 0.19 compatibility
| -rw-r--r-- | nimpb/compiler/generator.nim | 9 | ||||
| -rw-r--r-- | nimpb/compiler/nimpb_build.nim | 2 | ||||
| -rw-r--r-- | nimpb/json.nim | 2 |
3 files changed, 8 insertions, 5 deletions
diff --git a/nimpb/compiler/generator.nim b/nimpb/compiler/generator.nim index 8dff420..e765e00 100644 --- a/nimpb/compiler/generator.nim +++ b/nimpb/compiler/generator.nim @@ -265,7 +265,7 @@ proc findEnum(file: ProtoFile, typeName: string): Enum = break proc defaultValue(field: Field): string = - if field.defaultValue != nil: + if field.defaultValue != "": if isEnum(field): return &"{field.typeName}.{field.defaultValue}" elif field.ftype == google_protobuf_FieldDescriptorProtoType.TypeString: @@ -1065,7 +1065,10 @@ iterator genMessageFromJsonProc(msg: Message): string = elif field.ftype == google_protobuf_FieldDescriptorProto_Type.TypeBool: result = &"parseBool({n})" elif isNumeric(field): - result = &"parseInt[{field.nimTypeName}]({n})" + if isUnsigned(field): + result = &"parseUInt[{field.nimTypeName}]({n})" + else: + result = &"parseInt[{field.nimTypeName}]({n})" elif field.ftype == google_protobuf_FieldDescriptorProto_Type.TypeString: result = &"parseString({n})" elif field.ftype == google_protobuf_FieldDescriptorProto_Type.TypeBytes: @@ -1200,7 +1203,7 @@ proc hasGenService(serviceGenerator: ServiceGenerator): bool = serviceGenerator != nil and serviceGenerator.genService != nil proc ownFile(serviceGenerator: ServiceGenerator): bool = - serviceGenerator != nil and serviceGenerator.fileSuffix != nil + serviceGenerator != nil and serviceGenerator.fileSuffix != "" proc processFile(fdesc: google_protobuf_FileDescriptorProto, otherFiles: TableRef[string, ProtoFile], diff --git a/nimpb/compiler/nimpb_build.nim b/nimpb/compiler/nimpb_build.nim index 55d5e70..96b2313 100644 --- a/nimpb/compiler/nimpb_build.nim +++ b/nimpb/compiler/nimpb_build.nim @@ -33,7 +33,7 @@ for kind, key, val in getopt(): usage() of cmdEnd: assert(false) -if outdir == nil: +if outdir == "": echo("error: --out is required") quit(QuitFailure) diff --git a/nimpb/json.nim b/nimpb/json.nim index 8d34fc3..875c567 100644 --- a/nimpb/json.nim +++ b/nimpb/json.nim @@ -97,7 +97,7 @@ proc parseInt*[T: int32|int64](node: JsonNode): T = proc high(t: typedesc[uint64]): uint64 = 18446744073709551615'u64 -proc parseInt*[T: uint32|uint64](node: JsonNode): T = +proc parseUInt*[T: uint32|uint64](node: JsonNode): T = var big: BiggestUInt if node.kind == JString: |
