mirror of
https://github.com/nim-lang/Nim.git
synced 2026-04-25 08:43:58 +00:00
Docs expand using parameters (#21076)
* Trying to fix by changing renderer * add renderExpandUsing flag This flag makes the renderer expand parameters that use using statement to have their full type * Update docs * Make comment better explain why checking for nkSym * Fix nil access when macro/template has parameter with no type * Fix nil access when node is not semmed yet
This commit is contained in:
@@ -116,7 +116,8 @@
|
||||
|
||||
</ul>
|
||||
<ul class="simple nested-toc-section">bar
|
||||
<li><a class="reference" href="#bar%2CT%2CT" title="bar[T](a, b: T): T">bar[T](a, b: T): T</a></li>
|
||||
<li><a class="reference" href="#bar" title="bar(f: FooBuzz)">bar(f: FooBuzz)</a></li>
|
||||
<li><a class="reference" href="#bar%2CT%2CT" title="bar[T](a, b: T): T">bar[T](a, b: T): T</a></li>
|
||||
|
||||
</ul>
|
||||
<ul class="simple nested-toc-section">baz
|
||||
@@ -539,7 +540,15 @@
|
||||
|
||||
</div>
|
||||
<div id="bar-procs-all">
|
||||
<div id="bar,T,T">
|
||||
<div id="bar">
|
||||
<dt><pre><span class="Keyword">proc</span> <a href="#bar"><span class="Identifier">bar</span></a><span class="Other">(</span><span class="Identifier">f</span><span class="Other">:</span> <a href="testproject.html#FooBuzz"><span class="Identifier">FooBuzz</span></a><span class="Other">)</span> {.<span><span class="Other pragmadots">...</span></span><span class="pragmawrap"><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">forbids</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span></span>.}</pre></dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</div>
|
||||
<div id="bar,T,T">
|
||||
<dt><pre><span class="Keyword">proc</span> <a href="#bar%2CT%2CT"><span class="Identifier">bar</span></a><span class="Other">[</span><span class="Identifier">T</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">a</span><span class="Other">,</span> <span class="Identifier">b</span><span class="Other">:</span> <span class="Identifier">T</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">T</span></pre></dt>
|
||||
<dd>
|
||||
|
||||
|
||||
@@ -7,6 +7,7 @@ bar testproject.html#bar,T,T testproject: bar[T](a, b: T): T
|
||||
baz testproject.html#baz,T,T testproject: baz[T](a, b: T): T
|
||||
buzz testproject.html#buzz,T,T testproject: buzz[T](a, b: T): T
|
||||
FooBuzz testproject.html#FooBuzz testproject: FooBuzz
|
||||
bar testproject.html#bar testproject: bar(f: FooBuzz)
|
||||
aVariable testproject.html#aVariable testproject: aVariable
|
||||
A testproject.html#A testproject: A
|
||||
B testproject.html#B testproject: B
|
||||
|
||||
@@ -78,6 +78,8 @@
|
||||
</ul></dd>
|
||||
<dt><a name="bar" href="#bar"><span>bar:</span></a></dt><dd><ul class="simple">
|
||||
<li><a class="reference external"
|
||||
data-doc-search-tag="testproject: bar(f: FooBuzz)" href="testproject.html#bar">testproject: bar(f: FooBuzz)</a></li>
|
||||
<li><a class="reference external"
|
||||
data-doc-search-tag="testproject: bar[T](a, b: T): T" href="testproject.html#bar%2CT%2CT">testproject: bar[T](a, b: T): T</a></li>
|
||||
<li><a class="reference external"
|
||||
data-doc-search-tag="testproject: bar(): untyped" href="testproject.html#bar.m">testproject: bar(): untyped</a></li>
|
||||
|
||||
@@ -42,6 +42,11 @@ proc buzz*[T](a, b: T): T {.deprecated: "since v0.20".} =
|
||||
type
|
||||
FooBuzz* {.deprecated: "FooBuzz msg".} = int
|
||||
|
||||
using f: FooBuzz
|
||||
|
||||
proc bar*(f) = # `f` should be expanded to `f: FooBuzz`
|
||||
discard
|
||||
|
||||
import std/macros
|
||||
|
||||
var aVariable*: array[1, int]
|
||||
|
||||
Reference in New Issue
Block a user