File tree Expand file tree Collapse file tree 1 file changed +11
-5
lines changed Expand file tree Collapse file tree 1 file changed +11
-5
lines changed Original file line number Diff line number Diff line change @@ -538,19 +538,25 @@ struct GraphQLBuilder
538
538
}
539
539
else if constexpr (is_union<typename std::remove_reference_t <U>::element_type>::value)
540
540
{
541
+
542
+ // using model_t =
543
+ // typename GraphQLUnion < typename std::remove_reference_t<U>::element_type,
544
+ // typename(typename T::element_type
545
+ // > ::model_map)::find<typename std::remove_reference_t<V>::element_type>;
546
+ // typedef std::shared_ptr<model_t> asdf_t;
547
+
541
548
static_assert (GraphQLUnion<typename std::remove_reference_t <U>::element_type,
542
549
typename T::element_type>::value,
543
550
" template<> struct GraphQLUnion<T::element_type>: std::true_type{...} not "
544
551
" defined!" );
545
552
if (u)
546
553
return std::visit (
547
554
[]<typename V>(V&& arg) {
548
- using model_t =
549
- typename GraphQLUnion<typename std::remove_reference_t <U>::element_type,
550
- typename T::element_type>::model_map::
551
- find<typename std::remove_reference_t <V>::element_type>;
552
555
return GraphQLBuilder<T>::build (
553
- GraphQLBuilder<std::shared_ptr<model_t >>::build (std::move (arg)));
556
+ GraphQLBuilder<std::shared_ptr<typename GraphQLUnion<
557
+ typename std::remove_reference_t <U>::element_type,
558
+ typename T::element_type>::model_map::find<typename std::
559
+ remove_reference_t <V>::element_type>>>::build (std::move (arg)));
554
560
},
555
561
std::move (u->value ));
556
562
return std::shared_ptr<typename T::element_type>();
You can’t perform that action at this time.
0 commit comments