summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rwxr-xr-xdoc/manual.txt16
-rwxr-xr-xtodo.txt1
2 files changed, 16 insertions, 1 deletions
diff --git a/doc/manual.txt b/doc/manual.txt
index 67c3c43c7..6240a9147 100755
--- a/doc/manual.txt
+++ b/doc/manual.txt
@@ -1299,6 +1299,22 @@ algorithm returns true:
     if b.kind == distinct and typeEquals(b.baseType, a): return true

     return false

     

+You can, however, define your own implicit converters:

+

+.. code-block:: nimrod

+  converter toInt(x: char): int = result = ord(x)

+

+  var

+    x: int

+    chr: char = 'a'

+

+  # implicit conversion magic happens here

+  x = chr

+  echo x # => 97

+  # you can use the explicit form too

+  x = chr.toInt

+  echo x # => 97

+

 

 Assignment compatibility

 ~~~~~~~~~~~~~~~~~~~~~~~~

diff --git a/todo.txt b/todo.txt
index a72e03483..745496da9 100755
--- a/todo.txt
+++ b/todo.txt
@@ -48,7 +48,6 @@ Low priority
   is allocated
 - implicit conversions from ``ptr/ref T`` to ``var T`` (from
   ``ptr/ref T`` to ``T``)?
-- documentation: type converters
 - typeAllowed() for parameters...
 - find a way to reintroduce the cleanup() pass for C code generation: this
   is hard because of partial evaluation --> symbol files will fix this as