summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rwxr-xr-xcompiler/ast.nim3
-rwxr-xr-xlib/core/macros.nim5
-rwxr-xr-xtodo.txt2
3 files changed, 8 insertions, 2 deletions
diff --git a/compiler/ast.nim b/compiler/ast.nim
index f4b0d00a0..39228da40 100755
--- a/compiler/ast.nim
+++ b/compiler/ast.nim
@@ -198,6 +198,9 @@ type
     nkMutableTy,          # ``mutable T``
     nkDistinctTy,         # distinct type
     nkProcTy,             # proc type
+    nkIteratorTy,         # iterator type
+    nkSharedTy,           # 'shared T'
+                          # we use 'nkPostFix' for the 'not nil' addition
     nkEnumTy,             # enum body
     nkEnumFieldDef,       # `ident = expr` in an enumeration
     nkArgList,            # argument list
diff --git a/lib/core/macros.nim b/lib/core/macros.nim
index b80de27fa..966a21a1b 100755
--- a/lib/core/macros.nim
+++ b/lib/core/macros.nim
@@ -53,7 +53,10 @@ type
     nnkRefTy, nnkPtrTy, nnkVarTy,
     nnkConstTy, nnkMutableTy,
     nnkDistinctTy,
-    nnkProcTy, nnkEnumTy,
+    nnkProcTy, 
+    nnkIteratorTy,         # iterator type
+    nnkSharedTy,           # 'shared T'
+    nnkEnumTy,
     nnkEnumFieldDef,
     nnkArglist, nnkPattern
     nnkReturnToken
diff --git a/todo.txt b/todo.txt
index 90fc38485..9ee49b4f2 100755
--- a/todo.txt
+++ b/todo.txt
@@ -2,10 +2,10 @@ version 0.9.2
 =============
   
 - test&finish first class iterators:
+  * tyIterator: implement nkIteratorTy, nkSharedTy
   * allow return in first class iterators
   * nested iterators
   * arglist as a type?
-  * tyIterator?
 
 - fix closure bug finally
 - overloading based on ASTs: 'constraint' should not be in PType but for the