Classes | Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | Friends | List of all members
absl::any Class Reference

#include <any.h>

Classes

struct  IsInPlaceType
 
struct  IsInPlaceType< in_place_type_t< T > >
 
class  Obj
 
class  ObjInterface
 

Public Member Functions

constexpr any () noexcept
 
constexpr any () noexcept
 
 any (any &&other) noexcept=default
 
 any (any &&other) noexcept=default
 
 any (const any &other)
 
 any (const any &other)
 
template<typename T , typename... Args, typename VT = absl::decay_t<T>, absl::enable_if_t< absl::conjunction< std::is_copy_constructible< VT >, std::is_constructible< VT, Args... >>::value > * = nullptr>
 any (in_place_type_t< T >, Args &&... args)
 
template<typename T , typename... Args, typename VT = absl::decay_t<T>, absl::enable_if_t< absl::conjunction< std::is_copy_constructible< VT >, std::is_constructible< VT, Args... >>::value > * = nullptr>
 any (in_place_type_t< T >, Args &&... args)
 
template<typename T , typename U , typename... Args, typename VT = absl::decay_t<T>, absl::enable_if_t< absl::conjunction< std::is_copy_constructible< VT >, std::is_constructible< VT, std::initializer_list< U > &, Args... >>::value > * = nullptr>
 any (in_place_type_t< T >, std::initializer_list< U > ilist, Args &&... args)
 
template<typename T , typename U , typename... Args, typename VT = absl::decay_t<T>, absl::enable_if_t< absl::conjunction< std::is_copy_constructible< VT >, std::is_constructible< VT, std::initializer_list< U > &, Args... >>::value > * = nullptr>
 any (in_place_type_t< T >, std::initializer_list< U > ilist, Args &&... args)
 
template<typename T , typename VT = absl::decay_t<T>, absl::enable_if_t<!absl::disjunction< std::is_same< any, VT >, IsInPlaceType< VT >, absl::negation< std::is_copy_constructible< VT > > >::value > * = nullptr>
 any (T &&value)
 
template<typename T , typename VT = absl::decay_t<T>, absl::enable_if_t<!absl::disjunction< std::is_same< any, VT >, IsInPlaceType< VT >, absl::negation< std::is_copy_constructible< VT > > >::value > * = nullptr>
 any (T &&value)
 
template<typename T , typename... Args, typename VT = absl::decay_t<T>, absl::enable_if_t< std::is_copy_constructible< VT >::value &&std::is_constructible< VT, Args... >::value > * = nullptr>
VT & emplace (Args &&... args)
 
template<typename T , typename... Args, typename VT = absl::decay_t<T>, absl::enable_if_t< std::is_copy_constructible< VT >::value &&std::is_constructible< VT, Args... >::value > * = nullptr>
VT & emplace (Args &&... args)
 
template<typename T , typename U , typename... Args, typename VT = absl::decay_t<T>, absl::enable_if_t< std::is_copy_constructible< VT >::value &&std::is_constructible< VT, std::initializer_list< U > &, Args... >::value > * = nullptr>
VT & emplace (std::initializer_list< U > ilist, Args &&... args)
 
template<typename T , typename U , typename... Args, typename VT = absl::decay_t<T>, absl::enable_if_t< std::is_copy_constructible< VT >::value &&std::is_constructible< VT, std::initializer_list< U > &, Args... >::value > * = nullptr>
VT & emplace (std::initializer_list< U > ilist, Args &&... args)
 
bool has_value () const noexcept
 
bool has_value () const noexcept
 
anyoperator= (any &&rhs) noexcept
 
anyoperator= (any &&rhs) noexcept
 
anyoperator= (const any &rhs)
 
anyoperator= (const any &rhs)
 
template<typename T , typename VT = absl::decay_t<T>, absl::enable_if_t< absl::conjunction< absl::negation< std::is_same< VT, any >>, std::is_copy_constructible< VT >>::value > * = nullptr>
anyoperator= (T &&rhs)
 
template<typename T , typename VT = absl::decay_t<T>, absl::enable_if_t< absl::conjunction< absl::negation< std::is_same< VT, any >>, std::is_copy_constructible< VT >>::value > * = nullptr>
anyoperator= (T &&rhs)
 
void reset () noexcept
 
void reset () noexcept
 
void swap (any &other) noexcept
 
void swap (any &other) noexcept
 
const std::type_info & type () const noexcept
 

Private Member Functions

std::unique_ptr< ObjInterfaceCloneObj () const
 
std::unique_ptr< ObjInterfaceCloneObj () const
 
const void * GetObjTypeId () const
 
const void * GetObjTypeId () const
 

Static Private Member Functions

template<typename T >
constexpr static const void * IdForType ()
 
template<typename T >
constexpr static const void * IdForType ()
 

Private Attributes

std::unique_ptr< ObjInterfaceobj_
 

Friends

template<typename ValueType >
ValueType any_cast (any &operand)
 
template<typename ValueType >
ValueType any_cast (any &operand)
 
template<typename T >
Tany_cast (any *operand) noexcept
 
template<typename T >
Tany_cast (any *operand) noexcept
 
template<typename ValueType >
ValueType any_cast (const any &operand)
 
template<typename ValueType >
ValueType any_cast (const any &operand)
 
template<typename T >
const friend Tany_cast (const any *operand) noexcept
 
template<typename T >
const friend Tany_cast (const any *operand) noexcept
 

Detailed Description

Definition at line 189 of file abseil-cpp/absl/types/any.h.

Constructor & Destructor Documentation

◆ any() [1/12]

constexpr absl::any::any ( )
constexprdefaultnoexcept

◆ any() [2/12]

absl::any::any ( const any other)
inline

Definition at line 204 of file abseil-cpp/absl/types/any.h.

◆ any() [3/12]

absl::any::any ( any &&  other)
defaultnoexcept

◆ any() [4/12]

template<typename T , typename VT = absl::decay_t<T>, absl::enable_if_t<!absl::disjunction< std::is_same< any, VT >, IsInPlaceType< VT >, absl::negation< std::is_copy_constructible< VT > > >::value > * = nullptr>
absl::any::any ( T &&  value)
inline

Definition at line 223 of file abseil-cpp/absl/types/any.h.

◆ any() [5/12]

template<typename T , typename... Args, typename VT = absl::decay_t<T>, absl::enable_if_t< absl::conjunction< std::is_copy_constructible< VT >, std::is_constructible< VT, Args... >>::value > * = nullptr>
absl::any::any ( in_place_type_t< T ,
Args &&...  args 
)
inlineexplicit

Definition at line 231 of file abseil-cpp/absl/types/any.h.

◆ any() [6/12]

template<typename T , typename U , typename... Args, typename VT = absl::decay_t<T>, absl::enable_if_t< absl::conjunction< std::is_copy_constructible< VT >, std::is_constructible< VT, std::initializer_list< U > &, Args... >>::value > * = nullptr>
absl::any::any ( in_place_type_t< T ,
std::initializer_list< U >  ilist,
Args &&...  args 
)
inlineexplicit

Definition at line 244 of file abseil-cpp/absl/types/any.h.

◆ any() [7/12]

constexpr absl::any::any ( )
constexprnoexcept

◆ any() [8/12]

absl::any::any ( const any other)
inline

◆ any() [9/12]

absl::any::any ( any &&  other)
defaultnoexcept

◆ any() [10/12]

template<typename T , typename VT = absl::decay_t<T>, absl::enable_if_t<!absl::disjunction< std::is_same< any, VT >, IsInPlaceType< VT >, absl::negation< std::is_copy_constructible< VT > > >::value > * = nullptr>
absl::any::any ( T &&  value)
inline

◆ any() [11/12]

template<typename T , typename... Args, typename VT = absl::decay_t<T>, absl::enable_if_t< absl::conjunction< std::is_copy_constructible< VT >, std::is_constructible< VT, Args... >>::value > * = nullptr>
absl::any::any ( in_place_type_t< T ,
Args &&...  args 
)
inlineexplicit

◆ any() [12/12]

template<typename T , typename U , typename... Args, typename VT = absl::decay_t<T>, absl::enable_if_t< absl::conjunction< std::is_copy_constructible< VT >, std::is_constructible< VT, std::initializer_list< U > &, Args... >>::value > * = nullptr>
absl::any::any ( in_place_type_t< T ,
std::initializer_list< U >  ilist,
Args &&...  args 
)
inlineexplicit

Member Function Documentation

◆ CloneObj() [1/2]

std::unique_ptr<ObjInterface> absl::any::CloneObj ( ) const
inlineprivate

Definition at line 387 of file abseil-cpp/absl/types/any.h.

◆ CloneObj() [2/2]

std::unique_ptr<ObjInterface> absl::any::CloneObj ( ) const
inlineprivate

◆ emplace() [1/4]

template<typename T , typename... Args, typename VT = absl::decay_t<T>, absl::enable_if_t< std::is_copy_constructible< VT >::value &&std::is_constructible< VT, Args... >::value > * = nullptr>
VT& absl::any::emplace ( Args &&...  args)
inline

Definition at line 291 of file abseil-cpp/absl/types/any.h.

◆ emplace() [2/4]

template<typename T , typename... Args, typename VT = absl::decay_t<T>, absl::enable_if_t< std::is_copy_constructible< VT >::value &&std::is_constructible< VT, Args... >::value > * = nullptr>
VT& absl::any::emplace ( Args &&...  args)
inline

◆ emplace() [3/4]

template<typename T , typename U , typename... Args, typename VT = absl::decay_t<T>, absl::enable_if_t< std::is_copy_constructible< VT >::value &&std::is_constructible< VT, std::initializer_list< U > &, Args... >::value > * = nullptr>
VT& absl::any::emplace ( std::initializer_list< U >  ilist,
Args &&...  args 
)
inline

Definition at line 315 of file abseil-cpp/absl/types/any.h.

◆ emplace() [4/4]

template<typename T , typename U , typename... Args, typename VT = absl::decay_t<T>, absl::enable_if_t< std::is_copy_constructible< VT >::value &&std::is_constructible< VT, std::initializer_list< U > &, Args... >::value > * = nullptr>
VT& absl::any::emplace ( std::initializer_list< U >  ilist,
Args &&...  args 
)
inline

◆ GetObjTypeId() [1/2]

const void* absl::any::GetObjTypeId ( ) const
inlineprivate

Definition at line 401 of file abseil-cpp/absl/types/any.h.

◆ GetObjTypeId() [2/2]

const void* absl::any::GetObjTypeId ( ) const
inlineprivate

◆ has_value() [1/2]

bool absl::any::has_value ( ) const
inlinenoexcept

Definition at line 340 of file abseil-cpp/absl/types/any.h.

◆ has_value() [2/2]

bool absl::any::has_value ( ) const
inlinenoexcept

◆ IdForType() [1/2]

template<typename T >
constexpr static const void* absl::any::IdForType ( )
inlinestaticconstexprprivate

Definition at line 393 of file abseil-cpp/absl/types/any.h.

◆ IdForType() [2/2]

template<typename T >
constexpr static const void* absl::any::IdForType ( )
inlinestaticconstexprprivate

◆ operator=() [1/6]

any& absl::any::operator= ( any &&  rhs)
inlinenoexcept

Definition at line 259 of file abseil-cpp/absl/types/any.h.

◆ operator=() [2/6]

any& absl::any::operator= ( any &&  rhs)
inlinenoexcept

◆ operator=() [3/6]

any& absl::any::operator= ( const any rhs)
inline

Definition at line 252 of file abseil-cpp/absl/types/any.h.

◆ operator=() [4/6]

any& absl::any::operator= ( const any rhs)
inline

◆ operator=() [5/6]

template<typename T , typename VT = absl::decay_t<T>, absl::enable_if_t< absl::conjunction< absl::negation< std::is_same< VT, any >>, std::is_copy_constructible< VT >>::value > * = nullptr>
any& absl::any::operator= ( T &&  rhs)
inline

Definition at line 269 of file abseil-cpp/absl/types/any.h.

◆ operator=() [6/6]

template<typename T , typename VT = absl::decay_t<T>, absl::enable_if_t< absl::conjunction< absl::negation< std::is_same< VT, any >>, std::is_copy_constructible< VT >>::value > * = nullptr>
any& absl::any::operator= ( T &&  rhs)
inline

◆ reset() [1/2]

void absl::any::reset ( )
inlinenoexcept

Definition at line 327 of file abseil-cpp/absl/types/any.h.

◆ reset() [2/2]

void absl::any::reset ( )
inlinenoexcept

◆ swap() [1/2]

void absl::any::swap ( any other)
inlinenoexcept

Definition at line 332 of file abseil-cpp/absl/types/any.h.

◆ swap() [2/2]

void absl::any::swap ( any other)
inlinenoexcept

◆ type()

const std::type_info& absl::any::type ( ) const
inlinenoexcept

Friends And Related Function Documentation

◆ any_cast [1/8]

template<typename ValueType >
ValueType any_cast ( any operand)
friend

Definition at line 468 of file abseil-cpp/absl/types/any.h.

◆ any_cast [2/8]

template<typename ValueType >
ValueType any_cast ( any operand)
friend

Definition at line 468 of file abseil-cpp/absl/types/any.h.

◆ any_cast [3/8]

template<typename T >
T* any_cast ( any operand)
friend

Definition at line 503 of file abseil-cpp/absl/types/any.h.

◆ any_cast [4/8]

template<typename T >
T* any_cast ( any operand)
friend

Definition at line 503 of file abseil-cpp/absl/types/any.h.

◆ any_cast [5/8]

template<typename ValueType >
ValueType any_cast ( const any operand)
friend

Definition at line 454 of file abseil-cpp/absl/types/any.h.

◆ any_cast [6/8]

template<typename ValueType >
ValueType any_cast ( const any operand)
friend

Definition at line 454 of file abseil-cpp/absl/types/any.h.

◆ any_cast [7/8]

template<typename T >
const friend T* any_cast ( const any operand)
friend

Definition at line 492 of file abseil-cpp/absl/types/any.h.

◆ any_cast [8/8]

template<typename T >
const friend T* any_cast ( const any operand)
friend

Definition at line 492 of file abseil-cpp/absl/types/any.h.

Member Data Documentation

◆ obj_

std::unique_ptr< ObjInterface > absl::any::obj_
private

Definition at line 423 of file abseil-cpp/absl/types/any.h.


The documentation for this class was generated from the following file:


grpc
Author(s):
autogenerated on Fri May 16 2025 03:01:50