fileDescriptions[i] = builders[i].build();
}
}
void rebuildEntrances() {
RecordArrayBuilder builder = new RecordArrayBuilder(0, 1);
for (int i = 0; i < exactMethods.length; ++i) {
builder.add();
}
GeneratedLocation prevLocation = new GeneratedLocation(0, 0);
MethodReference prevMethod = null;
int prevMethodId = -1;
for (ExactMethodIterator iter = iterateOverExactMethods(); !iter.isEndReached(); iter.next()) {
int id = iter.getExactMethodId();
if (prevMethod != null) {
int lineIndex = Math.max(0, indexByKey(lineMapping, prevLocation));
while (lineIndex < lineMapping.size()) {
if (key(lineMapping.get(lineIndex)).compareTo(iter.getLocation()) >= 0) {
break;
}
int line = lineMapping.get(lineIndex).get(2);
if (line >= 0) {
GeneratedLocation firstLineLoc = key(lineMapping.get(lineIndex));
RecordArrayBuilder.SubArray array = builder.get(prevMethodId).getArray(0);
array.add(firstLineLoc.getLine());
array.add(firstLineLoc.getColumn());
break;
}
++lineIndex;
}
}
prevMethod = iter.getExactMethod();
prevMethodId = id;
prevLocation = iter.getLocation();
}
methodEntrances = builder.build();
}