private T[] ParseList <T>(WordReader wordReader, Func <WordReader, T> reader) { wordReader.GetWord(ListKeyword); var count = wordReader.GetInt(); var result = new T[count]; foreach (var i in count.Traverse()) { result[i] = reader(wordReader); } return(result); }