Fix dollar for non printable/accessible fields. Fixes #4236.

This commit is contained in:
Yuriy Glukhov
2016-05-31 12:38:25 +03:00
parent f3fdad0eda
commit ed96b09e61

View File

@@ -2296,12 +2296,15 @@ proc `$`*[T: tuple|object](x: T): string =
if not firstElement: result.add(", ")
result.add(name)
result.add(": ")
when compiles(value.isNil):
if value.isNil: result.add "nil"
else: result.add($value)
when compiles($value):
when compiles(value.isNil):
if value.isNil: result.add "nil"
else: result.add($value)
else:
result.add($value)
firstElement = false
else:
result.add($value)
firstElement = false
result.add("...")
result.add(")")
proc collectionToString[T: set | seq](x: T, b, e: string): string =