| 145 | |
| 146 | template <class TId> |
| 147 | TMaybeStringOrNumIdColumn<TId> GetSubsetFromMaybeStringOrNumIdColumn( |
| 148 | const TMaybeStringOrNumIdColumn<TId>& source, |
| 149 | const TArraySubsetIndexing<ui32>& subsetIndexing, |
| 150 | TMaybe<NPar::ILocalExecutor*> localExecutor |
| 151 | ) { |
| 152 | TMaybeStringOrNumIdColumn<TId> result; |
| 153 | result.SetStoreStringColumns(source.StoreString()); |
| 154 | if (source.StoreString()) { |
| 155 | result.GetMaybeStringData() = GetSubsetOfMaybeEmpty<TString>( |
| 156 | (TMaybeData<TConstArrayRef<TString>>) source.GetMaybeStringData(), |
| 157 | subsetIndexing, |
| 158 | localExecutor |
| 159 | ); |
| 160 | } else { |
| 161 | result.GetMaybeNumData() = GetSubsetOfMaybeEmpty<TId>( |
| 162 | (TMaybeData<TConstArrayRef<TId>>) source.GetMaybeNumData(), |
| 163 | subsetIndexing, |
| 164 | localExecutor |
| 165 | ); |
| 166 | } |
| 167 | return result; |
| 168 | } |
| 169 | |
| 170 | // for use while building |
| 171 | struct TCommonObjectsData { |
no test coverage detected