mirror of
https://github.com/nim-lang/Nim.git
synced 2025-12-28 08:54:53 +00:00
contributing docs: symbols need package prefix; changed allocStats to nimAllocStats (#13247)
This commit is contained in:
committed by
Andreas Rumpf
parent
4cbeddddcc
commit
981ffc912e
@@ -271,6 +271,20 @@ Note: these are general guidelines, not hard rules; there are always exceptions.
|
||||
Code reviews can just point to a specific section here to save time and
|
||||
propagate best practices.
|
||||
|
||||
.. _define_needs_prefix:
|
||||
New `defined(foo)` symbols need to be prefixed by the nimble package name, or
|
||||
by `nim` for symbols in nim sources (e.g. compiler, standard library). This is
|
||||
to avoid name conflicts across packages.
|
||||
|
||||
.. code-block:: nim
|
||||
|
||||
# if in nim sources
|
||||
when defined(allocStats): discard # bad, can cause conflicts
|
||||
when defined(nimAllocStats): discard # preferred
|
||||
# if in a pacakge `cligen`:
|
||||
when defined(debug): discard # bad, can cause conflicts
|
||||
when defined(cligenDebug): discard # preferred
|
||||
|
||||
.. _noimplicitbool:
|
||||
Take advantage of no implicit bool conversion
|
||||
|
||||
|
||||
@@ -65,7 +65,7 @@ when hasAlloc and not defined(js):
|
||||
let stats2 = getAllocStats()
|
||||
echo $(stats2 - stats1)
|
||||
|
||||
when defined(allocStats):
|
||||
when defined(nimAllocStats):
|
||||
var stats: AllocStats
|
||||
template incStat(what: untyped) = inc stats.what
|
||||
proc getAllocStats*(): AllocStats = stats
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
discard """
|
||||
cmd: '''nim c -d:allocStats --newruntime $file'''
|
||||
cmd: '''nim c -d:nimAllocStats --newruntime $file'''
|
||||
output: '''0
|
||||
(allocCount: 6, deallocCount: 6)'''
|
||||
"""
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
discard """
|
||||
cmd: '''nim c -d:allocStats --newruntime $file'''
|
||||
cmd: '''nim c -d:nimAllocStats --newruntime $file'''
|
||||
output: '''hi
|
||||
ho
|
||||
ha
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
discard """
|
||||
cmd: '''nim cpp -d:allocStats --newruntime --threads:on $file'''
|
||||
cmd: '''nim cpp -d:nimAllocStats --newruntime --threads:on $file'''
|
||||
output: '''(field: "value")
|
||||
Indeed
|
||||
axc
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
discard """
|
||||
valgrind: true
|
||||
cmd: '''nim c -d:allocStats --newruntime -d:useMalloc $file'''
|
||||
cmd: '''nim c -d:nimAllocStats --newruntime -d:useMalloc $file'''
|
||||
output: '''
|
||||
@[(input: @["KXSC", "BGMC"]), (input: @["PXFX"]), (input: @["WXRQ", "ZSCZD"])]'''
|
||||
"""
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
discard """
|
||||
cmd: '''nim c -d:allocStats --newruntime $file'''
|
||||
cmd: '''nim c -d:nimAllocStats --newruntime $file'''
|
||||
output: '''a b
|
||||
70
|
||||
hello
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
discard """
|
||||
valgrind: true
|
||||
cmd: '''nim c -d:allocStats --newruntime $file'''
|
||||
cmd: '''nim c -d:nimAllocStats --newruntime $file'''
|
||||
output: '''OK 3
|
||||
(allocCount: 8, deallocCount: 3)'''
|
||||
"""
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
discard """
|
||||
cmd: '''nim c -d:allocstats --newruntime $file'''
|
||||
cmd: '''nim c -d:nimAllocStats --newruntime $file'''
|
||||
output: '''button
|
||||
clicked!
|
||||
(allocCount: 4, deallocCount: 4)'''
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
discard """
|
||||
cmd: '''nim c -d:allocStats --newruntime $file'''
|
||||
cmd: '''nim c -d:nimAllocStats --newruntime $file'''
|
||||
output: '''button
|
||||
clicked!
|
||||
(allocCount: 9, deallocCount: 9)'''
|
||||
|
||||
Reference in New Issue
Block a user