libstdc++: __gnu_cxx::_Relative_pointer_impl< _Tp > Class Template Reference

libstdc++

__gnu_cxx::_Relative_pointer_impl< _Tp > Class Template Reference

`#include <pointer.h>`

Inheritance diagram for __gnu_cxx::_Relative_pointer_impl< _Tp >:
[legend]

## Public Types
typedef _Tp | element_type

## Public Member Functions
_Tp * | get () const
bool | operator< (const _Relative_pointer_impl &__rarg) const
bool | operator== (const _Relative_pointer_impl &__rarg) const
void | set (_Tp *__arg)

## Detailed Description

template<typename _Tp>
class __gnu_cxx::_Relative_pointer_impl< _Tp >

A storage policy for use with _Pointer_adapter<> which stores the pointer's address as an offset value which is relative to its own address.

This is intended for pointers within shared memory regions which might be mapped at different addresses by different processes. For null pointers, a value of 1 is used. (0 is legitimate sometimes for nodes in circularly linked lists) This value was chosen as the least likely to generate an incorrect null, As there is no reason why any normal pointer would point 1 byte into its own pointer address.

Definition at line 119 of file pointer.h.

## Member Typedef Documentation

## ◆ element_type

template<typename _Tp>

typedef _Tp __gnu_cxx::_Relative_pointer_impl< _Tp >::element_type

Definition at line 122 of file pointer.h.

## Member Function Documentation

## ◆ get()

template<typename _Tp>

_Tp * __gnu_cxx::_Relative_pointer_impl< _Tp >::get | ( |  | ) | const
| inline

Definition at line 125 of file pointer.h.

## ◆ operator<()

template<typename _Tp>

bool __gnu_cxx::_Relative_pointer_impl< _Tp >::operator< | ( | const _Relative_pointer_impl< _Tp > & | __rarg | ) | const
| inline

Definition at line 145 of file pointer.h.

## ◆ operator==()

template<typename _Tp>

bool __gnu_cxx::_Relative_pointer_impl< _Tp >::operator== | ( | const _Relative_pointer_impl< _Tp > & | __rarg | ) | const
| inline

Definition at line 151 of file pointer.h.

## ◆ set()

template<typename _Tp>

void __gnu_cxx::_Relative_pointer_impl< _Tp >::set | ( | _Tp * | __arg | ) |
| inline

Definition at line 135 of file pointer.h.

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

- pointer.h