template <typename... Ts>

class CompressedTuple

Defined at line 203 of file ../../third_party/abseil-cpp/absl/container/internal/compressed_tuple.h

Helper class to perform the Empty Base Class Optimization.

Ts can contain classes and non-classes, empty or not. For the ones that

are empty classes, we perform the CompressedTuple. If all types in Ts are

empty classes, then CompressedTuple

<Ts

...> is itself an empty class. (This

does not apply when one or more of those empty classes is itself an empty

CompressedTuple.)

To access the members, use member .get

<N

>() function.

Eg:

absl::container_internal::CompressedTuple

<int

, T1, T2, T3> value(7, t1, t2,

t3);

assert(value.get

<

0>() == 7);

T1

&

t1 = value.get

<

1>();

const T2

&

t2 = value.get

<

2>();

...

https://en.cppreference.com/w/cpp/language/ebo

Public Methods

void CompressedTuple<Ts...> ()

Defined at line 221 of file ../../third_party/abseil-cpp/absl/container/internal/compressed_tuple.h

void CompressedTuple<Ts...> (const Ts &... base)

Defined at line 223 of file ../../third_party/abseil-cpp/absl/container/internal/compressed_tuple.h

template <typename First, typename... Vs, absl::enable_if_t<
                                    absl::conjunction<
                                        // Ensure we are not hiding default copy/move constructors.
                                        absl::negation<std::is_same<void(CompressedTuple),
                                                                    void(absl::decay_t<First>)>>,
                                        internal_compressed_tuple::TupleItemsMoveConstructible<
                                            CompressedTuple<Ts...>, First, Vs...>>::value,
                                    bool> = true>
void CompressedTuple<Ts...> (First && first, Vs &&... base)

Ensure we are not hiding default copy/move constructors.

Defined at line 235 of file ../../third_party/abseil-cpp/absl/container/internal/compressed_tuple.h

template <int I>
ElemT<I> & get ()

Defined at line 241 of file ../../third_party/abseil-cpp/absl/container/internal/compressed_tuple.h

template <int I>
const ElemT<I> & get ()

Defined at line 246 of file ../../third_party/abseil-cpp/absl/container/internal/compressed_tuple.h

template <int I>
ElemT<I> && get ()

Defined at line 251 of file ../../third_party/abseil-cpp/absl/container/internal/compressed_tuple.h

template <int I>
const ElemT<I> && get ()

Defined at line 256 of file ../../third_party/abseil-cpp/absl/container/internal/compressed_tuple.h