Что за имя __detail в unordered_map.h?

Я решил узнать как реализована хеш-таблица в моей версии STL. Захожу в файл /usr/include/c++/9/bits/unordered_map.h и вижу там имя __detail:

namespace std _GLIBCXX_VISIBILITY(default)
{
_GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_BEGIN_NAMESPACE_CONTAINER

  /// Base types for unordered_map.
  template<bool _Cache>
    using __umap_traits = __detail::_Hashtable_traits<_Cache, false, true>;

Что такое _GLIBCXX_BEGIN_NAMESPACE_VERSION и _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ? В файле нет ни одной директивы #include. __detail, что это ?


Ответы (1 шт):

Автор решения: Антон

Это пространство имён, определённое в файле bits/hashtable_policy.h.

→ Ссылка