| author | Christian Urban <christian.urban@kcl.ac.uk> | 
| Sun, 19 Oct 2025 09:44:04 +0200 | |
| changeset 1011 | 31e011ce66e3 | 
| 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 |