@@ -215,29 +215,6 @@ struct _KeyBuilder {
215215 std::move (exprs));
216216 return _KeyBuilder<I - 1 , SLVertexWrapper, EXPR...>::make_sp_key (
217217 ctx, tag_alias, std::move (new_exprs));
218- } else if (vertex_col->vertex_column_type () ==
219- VertexColumnType::kMultiple ) {
220- auto typed_vertex_col =
221- std::dynamic_pointer_cast<MLVertexColumn>(vertex_col);
222- MLVertexWrapper<decltype (*typed_vertex_col)> wrapper (
223- *typed_vertex_col);
224- auto new_exprs = std::tuple_cat (std::make_tuple (std::move (wrapper)),
225- std::move (exprs));
226- return _KeyBuilder<I - 1 ,
227- MLVertexWrapper<decltype (*typed_vertex_col)>,
228- EXPR...>::make_sp_key (ctx, tag_alias,
229- std::move (new_exprs));
230- } else {
231- auto typed_vertex_col =
232- std::dynamic_pointer_cast<MSVertexColumn>(vertex_col);
233- MLVertexWrapper<decltype (*typed_vertex_col)> wrapper (
234- *typed_vertex_col);
235- auto new_exprs = std::tuple_cat (std::make_tuple (std::move (wrapper)),
236- std::move (exprs));
237- return _KeyBuilder<I - 1 ,
238- MLVertexWrapper<decltype (*typed_vertex_col)>,
239- EXPR...>::make_sp_key (ctx, tag_alias,
240- std::move (new_exprs));
241218 }
242219
243220 } else if (col->column_type () == ContextColumnType::kValue ) {
@@ -257,15 +234,6 @@ struct _KeyBuilder {
257234 return _KeyBuilder<I - 1 , ValueWrapper<int32_t >,
258235 EXPR...>::make_sp_key (ctx, tag_alias,
259236 std::move (new_exprs));
260- } else if (col->elem_type () == RTAnyType::kStringValue ) {
261- ValueWrapper<std::string_view> wrapper (
262- *dynamic_cast <const ValueColumn<std::string_view>*>(col.get ()));
263- auto new_exprs = std::tuple_cat (std::make_tuple (std::move (wrapper)),
264- std::move (exprs));
265- return _KeyBuilder<I - 1 , ValueWrapper<std::string_view>,
266- EXPR...>::make_sp_key (ctx, tag_alias,
267- std::move (new_exprs));
268-
269237 } else {
270238 return nullptr ;
271239 }
@@ -290,27 +258,6 @@ struct KeyBuilder {
290258 auto new_exprs = std::make_tuple<SLVertexWrapper>(std::move (wrapper));
291259 return _KeyBuilder<I - 1 , SLVertexWrapper>::make_sp_key (
292260 ctx, tag_alias, std::move (new_exprs));
293- } else if (vertex_col->vertex_column_type () ==
294- VertexColumnType::kMultiple ) {
295- auto typed_vertex_col =
296- std::dynamic_pointer_cast<MLVertexColumn>(vertex_col);
297- MLVertexWrapper<decltype (*typed_vertex_col)> wrapper (*typed_vertex_col);
298- auto new_exprs =
299- std::make_tuple<MLVertexWrapper<decltype (*typed_vertex_col)>>(
300- std::move (wrapper));
301- return _KeyBuilder<I - 1 ,
302- MLVertexWrapper<decltype (*typed_vertex_col)>>::
303- make_sp_key (ctx, tag_alias, std::move (new_exprs));
304- } else {
305- auto typed_vertex_col =
306- std::dynamic_pointer_cast<MSVertexColumn>(vertex_col);
307- MLVertexWrapper<decltype (*typed_vertex_col)> wrapper (*typed_vertex_col);
308- auto new_exprs =
309- std::make_tuple<MLVertexWrapper<decltype (*typed_vertex_col)>>(
310- std::move (wrapper));
311- return _KeyBuilder<I - 1 ,
312- MLVertexWrapper<decltype (*typed_vertex_col)>>::
313- make_sp_key (ctx, tag_alias, std::move (new_exprs));
314261 }
315262 } else if (col->column_type () == ContextColumnType::kValue ) {
316263 if (col->elem_type () == RTAnyType::kI64Value ) {
@@ -327,13 +274,6 @@ struct KeyBuilder {
327274 std::make_tuple<ValueWrapper<int32_t >>(std::move (wrapper));
328275 return _KeyBuilder<I - 1 , ValueWrapper<int32_t >>::make_sp_key (
329276 ctx, tag_alias, std::move (new_exprs));
330- } else if (col->elem_type () == RTAnyType::kStringValue ) {
331- ValueWrapper<std::string_view> wrapper (
332- *dynamic_cast <const ValueColumn<std::string_view>*>(col.get ()));
333- auto new_exprs =
334- std::make_tuple<ValueWrapper<std::string_view>>(std::move (wrapper));
335- return _KeyBuilder<I - 1 , ValueWrapper<std::string_view>>::make_sp_key (
336- ctx, tag_alias, std::move (new_exprs));
337277 } else {
338278 return nullptr ;
339279 }
@@ -1076,11 +1016,7 @@ std::pair<std::unique_ptr<IReadOperator>, ContextMeta> GroupByOprBuilder::Build(
10761016 const GraphReadInterface& graph,
10771017 const Context& ctx) -> std::unique_ptr<KeyBase> {
10781018 std::unique_ptr<KeyBase> key = nullptr ;
1079- if (mappings.size () == 3 ) {
1080- key = KeyBuilder<3 >::make_sp_key (ctx, mappings);
1081- } else if (mappings.size () == 2 ) {
1082- key = KeyBuilder<2 >::make_sp_key (ctx, mappings);
1083- } else if (mappings.size () == 1 ) {
1019+ if (mappings.size () == 1 ) {
10841020 key = KeyBuilder<1 >::make_sp_key (ctx, mappings);
10851021 }
10861022 if (key == nullptr ) {
0 commit comments