MCPcopy Create free account
hub / github.com/Snapchat/Valdi / finaliseIndex

Method finaliseIndex

valdi_protobuf/src/valdi_protobuf/DescriptorDatabase.cpp:195–212  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

193}
194
195void 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
214bool DescriptorDatabase::addFileDescriptorSetWithBuilder(const BytesView& data, ExceptionTracker& exceptionTracker) {
215 if (_builder == nullptr) {

Callers

nothing calls this directly

Calls 5

files_sizeMethod · 0.80
symbols_sizeMethod · 0.80
packages_sizeMethod · 0.80
clearMethod · 0.65
reserveMethod · 0.45

Tested by

no test coverage detected