| author | Christian Urban <urbanc@in.tum.de> | 
| Tue, 25 Sep 2018 00:27:06 +0100 | |
| changeset 559 | 893e756e18f5 | 
| parent 295 | 19f23c4c2167 | 
| permissions | -rw-r--r-- | 
| 66 
9215b9fb8852
tuned
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
7diff
changeset | 1 | abstract class Parser[I, T] {
 | 
| 
9215b9fb8852
tuned
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
7diff
changeset | 2 | def parse(ts: I): Set[(T, I)] | 
| 
9215b9fb8852
tuned
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
7diff
changeset | 3 | |
| 
9215b9fb8852
tuned
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
7diff
changeset | 4 | def parse_all(ts: I) : Set[T] = | 
| 295 
19f23c4c2167
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
169diff
changeset | 5 | for ((head, tail) <- parse(ts); | 
| 
19f23c4c2167
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
169diff
changeset | 6 | if (tail.isEmpty)) yield head | 
| 66 
9215b9fb8852
tuned
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
7diff
changeset | 7 | } | 
| 7 | 8 | |
| 9 |