| 193 | } |
| 194 | |
| 195 | void DescriptorDatabase::finaliseIndex() { |
| 196 | _fileIndexByName.clear(); |
| 197 | _fileIndexByName.reserve(_index.files_size()); |
| 198 | _symbolIndexByName.clear(); |
| 199 | _symbolIndexByName.reserve(_index.symbols_size()); |
| 200 | _packageIndexByName.clear(); |
| 201 | _packageIndexByName.reserve(_index.packages_size()); |
| 202 | for (int i = 0; i < _index.files_size(); ++i) { |
| 203 | _fileIndexByName[_index.files(i).file_name()] = static_cast<size_t>(i); |
| 204 | } |
| 205 | for (int i = 0; i < _index.symbols_size(); ++i) { |
| 206 | _symbolIndexByName[_index.symbols(i).full_name()] = static_cast<size_t>(i); |
| 207 | } |
| 208 | for (int i = 0; i < _index.packages_size(); ++i) { |
| 209 | _packageIndexByName[_index.packages(i).full_name()] = static_cast<size_t>(i); |
| 210 | } |
| 211 | _descriptors = std::vector<const google::protobuf::Descriptor*>(_index.symbols_size(), nullptr); |
| 212 | } |
| 213 | |
| 214 | bool DescriptorDatabase::addFileDescriptorSetWithBuilder(const BytesView& data, ExceptionTracker& exceptionTracker) { |
| 215 | if (_builder == nullptr) { |
nothing calls this directly
no test coverage detected