Allow empty argument list methods.

- Compile them as calls and definitions.
- Use them for call(), clear(), run(), try(), and yield().
- Update the docs.
This commit is contained in:
Bob Nystrom
2015-02-26 23:08:36 -08:00
parent 1aaa8cff52
commit 96ceaa528b
94 changed files with 291 additions and 224 deletions
+1 -1
View File
@@ -4,7 +4,7 @@ for (i in [1, 2, 3]) {
list.add(new Fn { IO.print(i) })
}
for (f in list) f.call
for (f in list) f.call()
// expect: 1
// expect: 2
// expect: 3
+1 -1
View File
@@ -5,7 +5,7 @@ for (i in [1, 2, 3]) {
list.add(new Fn { IO.print(j) })
}
for (f in list) f.call
for (f in list) f.call()
// expect: 2
// expect: 3
// expect: 4
+1 -1
View File
@@ -3,7 +3,7 @@ var f = new Fn {
return [1, 2, 3]
}
for (i in f.call) IO.print(i)
for (i in f.call()) IO.print(i)
// expect: evaluate sequence
// expect: 1
// expect: 2
+2 -2
View File
@@ -4,6 +4,6 @@ var f = new Fn {
}
}
var g = f.call
g.call
var g = f.call()
g.call()
// expect: 1
+1 -1
View File
@@ -4,5 +4,5 @@ var f = new Fn {
}
}
IO.print(f.call)
IO.print(f.call())
// expect: 1