ECSTASY
All in the name
Loading...
Searching...
No Matches
outer_join.hpp File Reference

Performs a left outer join between two parameter packs. More...

#include "Traits.hpp"
#include "contains.hpp"
Include dependency graph for outer_join.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  util::meta::_left_outer_join< Rights, IsInner, Left, OuterLefts >
 
struct  util::meta::_left_outer_join< Traits< Rights... >, IsInner, Left, OuterLefts... >
 
struct  util::meta::_left_outer_join< Traits< Rights... >, IsInner, Left, OuterLefts... >::result< LeftsUntreated >
 Resulting type of the outer join. More...
 
struct  util::meta::_left_outer_join< Traits< Rights... >, IsInner, Left, OuterLefts... >::result< NextLeft, LeftsUntreated... >
 Resulting type of the outer join. More...
 
struct  util::meta::left_outer_join< typename, typename >
 Performs a left outer join on two parameter pack types (returns types in Lefts but no in Rights). More...
 
struct  util::meta::left_outer_join< Traits< Left, Lefts... >, Traits< Rights... > >
 Performs a left outer join on two parameter pack types wrapped in Traits types (returns types in Lefts but not in Rights). More...
 
struct  util::meta::left_outer_join< std::tuple< Lefts... >, std::tuple< Rights... > >
 Performs a left outer join on two parameter pack types wrapped in tuple types (return types in lefts but not in Rights). More...
 

Namespaces

namespace  util
 Namespace regrouping helpers used by ecstasy but not specific to ecstasy.
 
namespace  util::meta
 Namespace regrouping all meta programmation helper types.
 

Typedefs

template<typename Lefts , typename Rights >
using util::meta::left_outer_join_t = typename left_outer_join< Lefts, Rights >::type
 Helper for left_outer_join<...>::type.
 
template<typename Lefts , typename Rights >
using util::meta::right_outer_join = left_outer_join< Rights, Lefts >
 Performs a right outer join on two parameter pack types wrapped in tuple types (return types in rights but not in lefts).
 
template<typename Lefts , typename Rights >
using util::meta::right_outer_join_t = typename right_outer_join< Lefts, Rights >::type
 Helper for right_outer_join<...>::type.
 

Detailed Description

Performs a left outer join between two parameter packs.

Author
Andréas Leroux (andre.nosp@m.as.l.nosp@m.eroux.nosp@m.@epi.nosp@m.tech..nosp@m.eu)
Version
1.0.0
Date
2022-10-28

Definition in file outer_join.hpp.