| 878 | |
| 879 | template <class TSharedDataPtr> |
| 880 | static void LoadWithCache( |
| 881 | const TSerializationTargetSingleTypeDataCache<TSharedDataPtr>& cachePart, |
| 882 | IBinSaver* binSaver, |
| 883 | THashMap<TString, TSharedDataPtr>* data |
| 884 | ) { |
| 885 | ui32 dataCount = 0; |
| 886 | LoadMulti(binSaver, &dataCount); |
| 887 | for (ui32 dataIdx : xrange(dataCount)) { |
| 888 | Y_UNUSED(dataIdx); |
| 889 | |
| 890 | TString name; |
| 891 | ui64 id; |
| 892 | LoadMulti(binSaver, &name, &id); |
| 893 | data->emplace(name, cachePart.at(id)); |
| 894 | } |
| 895 | } |
| 896 | |
| 897 | void TProcessedTargetData::Load(IBinSaver* binSaver) { |
| 898 | TSerializationTargetDataCache cache; |