Added safeAdd documentation
This commit is contained in:
parent
a7f769c6bd
commit
30737ea34b
1 changed files with 5 additions and 0 deletions
|
|
@ -3286,14 +3286,19 @@ when declared(initDebugger):
|
|||
when hasAlloc:
|
||||
# XXX: make these the default (or implement the NilObject optimization)
|
||||
proc safeAdd*[T](x: var seq[T], y: T) {.noSideEffect.} =
|
||||
## Add `y` to `x` unless `x` is not yet initialized; in that case, `x`
|
||||
## becomes `@[y]`
|
||||
if x == nil: x = @[y]
|
||||
else: x.add(y)
|
||||
|
||||
proc safeAdd*(x: var string, y: char) =
|
||||
## Add `y` to `x`. If `x` is `nil` it is initialized to `""`
|
||||
if x == nil: x = ""
|
||||
x.add(y)
|
||||
|
||||
proc safeAdd*(x: var string, y: string) =
|
||||
## Add `y` to `x` unless `x` is not yet initalized; in that case, `x`
|
||||
## becomes `y`
|
||||
if x == nil: x = y
|
||||
else: x.add(y)
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue