cbruegg
fun Sequence<Token>.matches(text: String): Boolean { var count = 0 return all { count < text.length && text[count++] == it.char } && count == text.length }