Georg Brandl avatar Georg Brandl committed e6e345f Merge

Merge in Nimrod example file.

Comments (0)

Files changed (3)

Add a comment to this file

pygments/lexers/_mapping.py

File contents unchanged.

Add a comment to this file

pygments/lexers/compiled.py

File contents unchanged.

tests/examplefiles/test.nim

+import re
+
+for x in lines("myfile.txt"):
+  if x =~ re"(\w+)=(.*)":
+    echo "Key: ", matches[0],
+         " Value: ", matches[1]
+
+Echo("What's your name? ")
+var name: string = readLine(stdin)
+if name == "":
+  echo("Poor soul, you lost your name?")
+elif name == "name":
+  echo("Very funny, your name is name.")
+else:
+  Echo("Hi, ", name, "!")
+
+var name = readLine(stdin)
+case name
+of "":
+  echo("Poor soul, you lost your name?")
+of "name":
+  echo("Very funny, your name is name.")
+else:
+  Echo("Hi, ", name, "!")
+
+from strutils import parseInt
+
+Echo("A number please: ")
+var n = parseInt(readLine(stdin))
+case n
+of 0..2, 4..7: Echo("The number is in the set: {0, 1, 2, 4, 5, 6, 7}")
+of 3, 8: Echo("The number is 3 or 8")
+
+Echo("Counting to 10: ")
+var i = 1
+while i <= 10:
+  Echo($i)
+  inc(i)
+
+proc yes(question: string): bool =
+  Echo(question, " (y/n)")
+  while true:
+    case readLine(stdin)
+    of "y", "Y", "yes", "Yes": return true
+    of "n", "N", "no", "No": return false
+    else: Echo("Please be clear: yes or no")
+
+proc even(n: int): bool
+
+proc odd(n: int): bool =
+  if n == 1: return true
+  else: return even(n-1)
+
+iterator countup(a, b: int): int =
+  var res = a
+  while res <= b:
+    yield res
+    inc(res)
+
+type
+  TPerson = object of TObject
+    name*: string  # the * means that `name` is accessible from other modules
+    age: int       # no * means that the field is hidden from other modules
+
+  TStudent = object of TPerson # TStudent inherits from TPerson
+    id: int                    # with an id field
+
+var
+  student: TStudent
+  person: TPerson
+assert(student is TStudent)
+
+echo({'a', 'b', 'c'}.card)
+stdout.writeln("Hallo")
+var
+  f: TFile
+if open(f, "numbers.txt"):
+  try:
+    var a = readLine(f)
+    var b = readLine(f)
+    echo("sum: " & $(parseInt(a) + parseInt(b)))
+  except EOverflow:
+    echo("overflow!")
+  except EInvalidValue:
+    echo("could not convert string to integer")
+  except EIO:
+    echo("IO error!")
+  except:
+    echo("Unknown exception!")
+    # reraise the unknown exception:
+    raise
+  finally:
+    close(f)
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.