FLANG
Static Public Member Functions | List of all members
Fortran::common::UnwrapperHelper Struct Reference

Static Public Member Functions

template<typename A , typename B >
static auto Unwrap (B &x) -> Constify< A, B > *
 
template<typename A , typename B >
static auto Unwrap (B *p) -> Constify< A, B > *
 
template<typename A , typename B >
static auto Unwrap (const std::unique_ptr< B > &p) -> Constify< A, B > *
 
template<typename A , typename B >
static auto Unwrap (const std::shared_ptr< B > &p) -> Constify< A, B > *
 
template<typename A , typename B >
static auto Unwrap (std::optional< B > &x) -> Constify< A, B > *
 
template<typename A , typename B >
static auto Unwrap (const std::optional< B > &x) -> Constify< A, B > *
 
template<typename A , typename... Bs>
static A * Unwrap (std::variant< Bs... > &u)
 
template<typename A , typename... Bs>
static auto Unwrap (const std::variant< Bs... > &u) -> std::add_const_t< A > *
 
template<typename A , typename B >
static auto Unwrap (const Reference< B > &ref) -> Constify< A, B > *
 
template<typename A , typename B , bool COPY>
static auto Unwrap (const Indirection< B, COPY > &p) -> Constify< A, B > *
 
template<typename A , typename B >
static auto Unwrap (const CountedReference< B > &p) -> Constify< A, B > *
 

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