You could do something like
when not defined(nimdoc):
proc internalOnly*() =
## A method that is "package private", but needs to be flagged as
## public so the rest of the module can access it. However, it
## should not show up in the documentation
echo "Hello"
else:
proc internalOnly() = discard
proc publicApi*() =
## Public function that users can call
internalOnly()
publicApi()
RunThat should make it compile as long as you don't use `runnableExamples`.
