private ITokenCollection compactGeneric(ITokenCollection semi) { ITokenCollection aClone = new Semi(); int start, stop; semi.find("<", out start); if (start == -1) { return(semi); } semi.find(">", out stop); if (stop == -1) { return(semi); } for (var i = 0; i <= start - 2; ++i) { aClone.add(semi[i]); } var newTok = ""; for (var i = start - 1; i < stop + 1; ++i) { newTok += semi[i]; } //aClone.add(newTok); // this comment causes compaction to remove generic params aClone.add(semi[start - 1]); for (var i = stop + 1; i < semi.size(); ++i) { aClone.add(semi[i]); } return(aClone); }
ITokenCollection compactGeneric(ITokenCollection semi) { ITokenCollection aClone = new Semi(); int start, stop; semi.find("<", out start); if (start == -1) { return(semi); } semi.find(">", out stop); if (stop == -1) { return(semi); } for (int i = 0; i <= start - 2; ++i) { aClone.add(semi[i]); } string newTok = ""; for (int i = start - 1; i < stop + 1; ++i) { newTok += semi[i]; } //aClone.add(newTok); aClone.add(semi[start - 1]); for (int i = stop + 1; i < semi.size(); ++i) { aClone.add(semi[i]); } return(aClone); }