public IEnumerable<DocumentLine> GetLinesBetween (int startLine, int endLine)
{
var startNode = GetNode (startLine - 1);
if (startNode == null)
yield break;
int curLine = startLine;
do {
yield return startNode;
startNode = startNode.GetNextNode ();
} while (startNode != null && curLine++ < endLine);
}