summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorKaushal Modi <kaushal.modi@gmail.com>2020-02-25 15:19:51 -0500
committerGitHub <noreply@github.com>2020-02-25 21:19:51 +0100
commite4ed19c12fcce046d990a918800d9031706e8b66 (patch)
tree3fbc61d6d1cf0642968763f31694f944390e0877
parentdb540a0223480134598fb4806c55510cdef36bf1 (diff)
downloadNim-e4ed19c12fcce046d990a918800d9031706e8b66.tar.gz
[backport] tut1: Update the proc overloading examples (#13497) [skip ci]
-rw-r--r--doc/tut1.rst16
1 files changed, 11 insertions, 5 deletions
diff --git a/doc/tut1.rst b/doc/tut1.rst
index 9b411c932..6d54d88a3 100644
--- a/doc/tut1.rst
+++ b/doc/tut1.rst
@@ -743,13 +743,19 @@ Overloaded procedures
 Nim provides the ability to overload procedures similar to C++:
 
 .. code-block:: nim
-  proc toString(x: int): string = ...
+  proc toString(x: int): string =
+    result =
+      if x < 0: "negative"
+      elif x > 0: "positive"
+      else: "zero"
+
   proc toString(x: bool): string =
-    if x: result = "true"
-    else: result = "false"
+    result =
+      if x: "yep"
+      else: "nope"
 
-  echo toString(13)   # calls the toString(x: int) proc
-  echo toString(true) # calls the toString(x: bool) proc
+  assert toString(13) == "positive" # calls the toString(x: int) proc
+  assert toString(true) == "yep"    # calls the toString(x: bool) proc
 
 (Note that ``toString`` is usually the `$ <dollars.html>`_ operator in
 Nim.) The compiler chooses the most appropriate proc for the ``toString``