Это предложение кажется неоднозначным. В новой формулировке говорится: «Если токен пуст, обработка продолжается до тех пор, пока не будет дан непустой токен».
Токен «помечается как разделенный», когда его начало и конец известны. Таким образом, от последнего разделителя к вновь найденному разделителю.
Токен может быть пустым, если рядом находятся 2 разделителя.
Например, допустим, что разделитель - запятая.
fashl,gasdf,agasdf,aasdf,,ghask
Из шести токенов пятый токен пуст. Его начало и конец устанавливаются четвертой и пятой запятыми, поэтому он «разделен». Но никакие символы не были включены в него.
Однако предложение делает go неоднозначным. «Обработка должна продолжаться» не указывает, что происходит с пустым токеном. Вернее, он не определяет, какое логическое действие или путь следует предпринять. Так что это может означать:
Если найден пустой токен, продолжайте чтение до следующего разделителя и считайте, что токен.
Если найден пустой токен, проигнорируйте токен и продолжайте чтение.
Хотя конечный эффект этого может не иметь значения.