diff options
Diffstat (limited to 'doc')
-rw-r--r-- | doc/advopt.txt | 5 | ||||
-rw-r--r-- | doc/manual.rst | 5 | ||||
-rw-r--r-- | doc/tut2.rst | 3 |
3 files changed, 10 insertions, 3 deletions
diff --git a/doc/advopt.txt b/doc/advopt.txt index 4dd710107..46b9a12a6 100644 --- a/doc/advopt.txt +++ b/doc/advopt.txt @@ -13,7 +13,7 @@ Advanced commands: //genDepend generate a DOT file containing the module dependency graph //dump dump all defined conditionals and search paths - see also: --dump.format:json (useful with: ` | jq`) + see also: --dump.format:json (useful with: ` | jq`) //check checks the project for syntax and semantic Runtime checks (see -x): @@ -78,7 +78,8 @@ Advanced options: --tlsEmulation:on|off turn thread local storage emulation on|off --taintMode:on|off turn taint mode on|off --implicitStatic:on|off turn implicit compile time evaluation on|off - --patterns:on|off turn pattern matching on|off + --patterns:on|off turn term rewriting macros on|off + --multimethods:on|off turn multi-methods on|off --memTracker:on|off turn memory tracker on|off --hotCodeReloading:on|off turn support for hot code reloading on|off diff --git a/doc/manual.rst b/doc/manual.rst index 09daf4a95..7ed7900e9 100644 --- a/doc/manual.rst +++ b/doc/manual.rst @@ -3716,6 +3716,9 @@ The ``[]`` subscript operator for arrays/openarrays/sequences can be overloaded. Multi-methods ============= +**Note:** Starting from Nim 0.20, to use multi-methods one must explicitly pass +``--multimethods:on`` when compiling. + Procedures always use static dispatch. Multi-methods use dynamic dispatch. For dynamic dispatch to work on an object it should be a reference type as well. @@ -6222,7 +6225,7 @@ Predicate Meaning =================== ===================================================== Predicates that share their name with a keyword have to be escaped with -backticks: `` `const` ``. +backticks. The ``alias`` and ``noalias`` predicates refer not only to the matching AST, but also to every other bound parameter; syntactically they need to occur after the ordinary AST predicates: diff --git a/doc/tut2.rst b/doc/tut2.rst index 4c1ec5747..5856b9fde 100644 --- a/doc/tut2.rst +++ b/doc/tut2.rst @@ -308,6 +308,9 @@ Note that in the example the constructors ``newLit`` and ``newPlus`` are procs because it makes more sense for them to use static binding, but ``eval`` is a method because it requires dynamic binding. +**Note:** Starting from Nim 0.20, to use multi-methods one must explicitly pass +``--multimethods:on`` when compiling. + In a multi-method all parameters that have an object type are used for the dispatching: |