aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--nimpb/wkt/duration.nim10
1 files changed, 5 insertions, 5 deletions
diff --git a/nimpb/wkt/duration.nim b/nimpb/wkt/duration.nim
index ecc7e6b..46e03d4 100644
--- a/nimpb/wkt/duration.nim
+++ b/nimpb/wkt/duration.nim
@@ -40,13 +40,13 @@ proc parsegoogle_protobuf_Duration*(node: JsonNode): google_protobuf_Duration =
let dotIndex = find(node.str, '.')
if dotIndex == -1:
- result.seconds = parseBiggestInt(node.str[0..^2])
+ setSeconds(result, parseBiggestInt(node.str[0..^2]))
if result.seconds < -315_576_000_000'i64 or
result.seconds > 315_576_000_000'i64:
raise newException(nimpb_json.ParseError, "duration seconds out of bounds")
return
- result.seconds = parseBiggestInt(node.str[0..dotIndex-1])
+ setSeconds(result, parseBiggestInt(node.str[0..dotIndex-1]))
if result.seconds < -315_576_000_000'i64 or
result.seconds > 315_576_000_000'i64:
@@ -55,14 +55,14 @@ proc parsegoogle_protobuf_Duration*(node: JsonNode): google_protobuf_Duration =
let nanoStr = node.str[dotIndex+1..^2]
var factor = 100_000_000
- result.nanos = 0
+ setNanos(result, 0)
for ch in nanoStr:
- result.nanos = result.nanos + int32(factor * (ord(ch) - ord('0')))
+ setNanos(result, result.nanos + int32(factor * (ord(ch) - ord('0'))))
factor = factor div 10
if result.nanos > 999_999_999:
raise newException(ValueError, "duration nanos out of bounds")
if result.seconds < 0:
- result.nanos = -result.nanos
+ setNanos(result, -result.nanos)