mirror of
https://github.com/nim-lang/Nim.git
synced 2026-06-06 20:04:18 +00:00
document ; vs , for generic params (#17192)
This commit is contained in:
@@ -4805,7 +4805,6 @@ The following example shows how a generic binary tree can be modeled:
|
||||
The ``T`` is called a `generic type parameter`:idx: or
|
||||
a `type variable`:idx:.
|
||||
|
||||
|
||||
Is operator
|
||||
-----------
|
||||
|
||||
@@ -4861,6 +4860,12 @@ more complex type classes:
|
||||
for key, value in fieldPairs(rec):
|
||||
echo key, " = ", value
|
||||
|
||||
Type constraints on generic parameters can be grouped with `,` and propagation
|
||||
stops with `;`, similarly to parameters for macros and templates:
|
||||
|
||||
.. code-block:: nim
|
||||
proc fn1[T; U, V: SomeFloat]() = discard # T is unconstrained
|
||||
template fn2(t; u, v: SomeFloat) = discard # t is unconstrained
|
||||
|
||||
Whilst the syntax of type classes appears to resemble that of ADTs/algebraic data
|
||||
types in ML-like languages, it should be understood that type classes are static
|
||||
|
||||
Reference in New Issue
Block a user