/// <summary> /// Returns all tokens up to the terminator of the given start token. /// </summary> /// <remarks> /// The source enumerator is left on the terminator token when this /// method is finished reading. /// </remarks> private static IEnumerable<WikiToken> ReadToEnd(IEnumerator<WikiToken> e, WikiToken start) { Debug.Assert(e != null); Debug.Assert(start != null); Debug.Assert(!(start is WikiEndToken)); while (e.MoveNext()) { WikiEndToken end = e.Current as WikiEndToken; if (end != null && end.Start == start) break; yield return e.Current; } }
public WikiEndToken(WikiToken start) { _start = start; }