Scroll to navigation

__gnu_cxx::__detail(3) Library Functions Manual __gnu_cxx::__detail(3)

NAME

__gnu_cxx::__detail - Implementation details not part of the namespace __gnu_cxx interface.

SYNOPSIS

Classes


class __mini_vector
__mini_vector<> is a stripped down version of the full-fledged std::vector<>. class _Bitmap_counter
The bitmap counter which acts as the bitmap manipulator, and manages the bit-manipulation functions and the searching and identification functions on the bit-map. class _Ffit_finder
The class which acts as a predicate for applying the first-fit memory allocation policy for the bitmap allocator.

Enumerations


enum { _S_max_rope_depth }
enum { bits_per_byte, bits_per_block }
enum _Tag { _S_leaf, _S_concat, _S_substringfn, _S_function }

Functions


void __bit_allocate (std::size_t *__pbmap, std::size_t __pos) throw ()
Mark a memory address as allocated by re-setting the corresponding bit in the bit-map. void __bit_free (std::size_t *__pbmap, std::size_t __pos) throw ()
Mark a memory address as free by setting the corresponding bit in the bit-map. template<typename _ForwardIterator , typename _Tp , typename _Compare > _ForwardIterator __lower_bound (_ForwardIterator __first, _ForwardIterator __last, const _Tp &__val, _Compare __comp)
template<typename _AddrPair > std::size_t __num_bitmaps (_AddrPair __ap)
The number of Bit-maps pointed to by the address pair passed to the function. template<typename _AddrPair > std::size_t __num_blocks (_AddrPair __ap)
The number of Blocks pointed to by the address pair passed to the function.

Detailed Description

Implementation details not part of the namespace __gnu_cxx interface.

Function Documentation

void __gnu_cxx::__detail::__bit_allocate (std::size_t * __pbmap, std::size_t __pos) [inline]

Mark a memory address as allocated by re-setting the corresponding bit in the bit-map.

Referenced by __gnu_cxx::bitmap_allocator< _Tp >::_M_allocate_single_object().

void __gnu_cxx::__detail::__bit_free (std::size_t * __pbmap, std::size_t __pos) [inline]

Mark a memory address as free by setting the corresponding bit in the bit-map.

template<typename _AddrPair > std::size_t __gnu_cxx::__detail::__num_bitmaps (_AddrPair __ap) [inline]

The number of Bit-maps pointed to by the address pair passed to the function.

References __num_blocks().

Referenced by __gnu_cxx::bitmap_allocator< _Tp >::_M_allocate_single_object().

template<typename _AddrPair > std::size_t __gnu_cxx::__detail::__num_blocks (_AddrPair __ap) [inline]

The number of Blocks pointed to by the address pair passed to the function.

Referenced by __num_bitmaps().

Author

Generated automatically by Doxygen for libstdc++ from the source code.

Mon Dec 18 2023 libstdc++