BDE 4.39.x Production Release
Loading...
Searching...
No Matches
bslma::PointerUtil Struct Reference

#include <bslma_pointerutil.h>

Detailed Description

This struct provides a namespace for utility functions that perform low-level pointer manipulations.

See bslma_pointerutil

Static Public Member Functions

template<class TYPE >
static BSLS_KEYWORD_CONSTEXPR TYPE * unqualify (TYPE *address) BSLS_KEYWORD_NOEXCEPT
 
template<class TYPE >
static BSLS_KEYWORD_CONSTEXPR TYPE * unqualify (const TYPE *address) BSLS_KEYWORD_NOEXCEPT
 
template<class TYPE >
static BSLS_KEYWORD_CONSTEXPR TYPE * unqualify (volatile TYPE *address) BSLS_KEYWORD_NOEXCEPT
 
template<class TYPE >
static BSLS_KEYWORD_CONSTEXPR TYPE * unqualify (const volatile TYPE *address) BSLS_KEYWORD_NOEXCEPT
 
template<class TYPE >
static BSLS_KEYWORD_CONSTEXPR void * voidify (TYPE *address) BSLS_KEYWORD_NOEXCEPT
 

Member Function Documentation

◆ unqualify() [1/4]

template<class TYPE >
BSLS_KEYWORD_CONSTEXPR TYPE * bslma::PointerUtil::unqualify ( const TYPE *  address)
inlinestatic

◆ unqualify() [2/4]

template<class TYPE >
BSLS_KEYWORD_CONSTEXPR TYPE * bslma::PointerUtil::unqualify ( const volatile TYPE *  address)
inlinestatic

◆ unqualify() [3/4]

template<class TYPE >
BSLS_KEYWORD_CONSTEXPR TYPE * bslma::PointerUtil::unqualify ( TYPE *  address)
inlinestatic

Return the specified address cast to a pointer to the cv-unqualified form of the (template parameter) TYPE; if TYPE is a function type, address is returned unchanged.

◆ unqualify() [4/4]

template<class TYPE >
BSLS_KEYWORD_CONSTEXPR TYPE * bslma::PointerUtil::unqualify ( volatile TYPE *  address)
inlinestatic

◆ voidify()

template<class TYPE >
BSLS_KEYWORD_CONSTEXPR void * bslma::PointerUtil::voidify ( TYPE *  address)
inlinestatic

Return the specified address cast to void *, stripping any cv-qualification from the (template parameter) TYPE.

Note
Note that if TYPE is a function type, the conversion relies on conditionally- supported behavior (see {Function Pointers and void *}).

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