Itoyori  v0.0.1
global_ptr.hpp File Reference
#include <type_traits>
#include <iterator>
#include <cstdint>
#include <unistd.h>
#include "ityr/common/util.hpp"
#include "ityr/common/topology.hpp"
#include "ityr/ori/util.hpp"
#include "ityr/ori/core.hpp"
Include dependency graph for global_ptr.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  ityr::ori::global_ptr< T >
 
class  ityr::ori::global_ref< T, typename >
 
class  ityr::ori::global_ref< T, std::enable_if_t< std::is_trivially_copyable_v< T > > >
 
struct  ityr::ori::is_global_ptr< typename >
 
struct  ityr::ori::is_global_ptr< global_ptr< T > >
 
struct  ityr::ori::test_template_type< T >
 

Namespaces

 ityr
 
 ityr::ori
 

Functions

template<typename T1 , typename T2 >
auto ityr::ori::operator- (const global_ptr< T1 > &p1, const global_ptr< T2 > &p2)
 
template<typename T >
constexpr bool ityr::ori::operator== (const global_ptr< T > &p1, const global_ptr< T > &p2) noexcept
 
template<typename T >
constexpr bool ityr::ori::operator== (const global_ptr< T > &p, std::nullptr_t) noexcept
 
template<typename T >
constexpr bool ityr::ori::operator== (std::nullptr_t, const global_ptr< T > &p) noexcept
 
template<typename T >
constexpr bool ityr::ori::operator!= (const global_ptr< T > &p1, const global_ptr< T > &p2) noexcept
 
template<typename T >
constexpr bool ityr::ori::operator!= (const global_ptr< T > &p, std::nullptr_t) noexcept
 
template<typename T >
constexpr bool ityr::ori::operator!= (std::nullptr_t, const global_ptr< T > &p) noexcept
 
template<typename T >
constexpr bool ityr::ori::operator< (const global_ptr< T > &p1, const global_ptr< T > &p2) noexcept
 
template<typename T >
constexpr bool ityr::ori::operator> (const global_ptr< T > &p1, const global_ptr< T > &p2) noexcept
 
template<typename T >
constexpr bool ityr::ori::operator<= (const global_ptr< T > &p1, const global_ptr< T > &p2) noexcept
 
template<typename T >
constexpr bool ityr::ori::operator>= (const global_ptr< T > &p1, const global_ptr< T > &p2) noexcept
 
template<typename T >
constexpr void ityr::ori::swap (global_ptr< T > &p1, global_ptr< T > &p2) noexcept
 
template<typename T , typename U >
global_ptr< T > ityr::ori::static_pointer_cast (const global_ptr< U > &p) noexcept
 
template<typename T , typename U >
global_ptr< T > ityr::ori::dynamic_pointer_cast (const global_ptr< U > &p) noexcept
 
template<typename T , typename U >
global_ptr< T > ityr::ori::const_pointer_cast (const global_ptr< U > &p) noexcept
 
template<typename T , typename U >
global_ptr< T > ityr::ori::reinterpret_pointer_cast (const global_ptr< U > &p) noexcept
 
template<typename T >
void ityr::ori::swap (global_ref< T > r1, global_ref< T > r2)
 
template<typename T , typename MemberT >
auto ityr::ori::operator->* (global_ptr< T > ptr, MemberT T::*mp)
 

Variables

template<typename T >
constexpr bool ityr::ori::is_global_ptr_v = is_global_ptr<T>::value