Loading...
Searching...
No Matches
Classes | Namespaces | Typedefs
reference.h File Reference

Assignable reference with wrapper support for rvalues. More...

#include <ostream>
#include "core/error.h"
#include "util/type_traits.h"
#include "util/pointer.h"

Go to the source code of this file.

Classes

struct  reference< T >
 Non-persistent reference (i.e., cannot take rvalues) More...
 
struct  persistent_reference< T >
 Persistent reference (no difference for non const references) More...
 

Namespaces

namespace  bbm
 

Typedefs

template<typename T >
using const_reference = reference< bbm::add_const_t< T > >
 const non-persistent reference
 
template<typename T >
using const_persistent_reference = persistent_reference< bbm::add_const_t< T > >
 const_persistent_reference
 

type traits

@{

template<typename T >
using is_bbm_reference = bbm::detail::is_bbm_reference_impl< std::decay_t< T > >
 
template<typename T >
constexpr bool is_bbm_reference_v = is_bbm_reference<T>::value
 

Detailed Description

Assignable reference with wrapper support for rvalues.