ALib C++ Library
by
Library Version:
2510 R0
Documentation generated by
Loading...
Searching...
No Matches
home
dev
A-Worx
ALib
src
alib
containers
stringtree.mpp
Go to the documentation of this file.
1
//==================================================================================================
2
/// \file
3
/// This header-file is part of the \aliblong.
4
/// With supporting legacy or module builds, .mpp-files are either recognized by the build-system
5
/// as C++20 Module interface files, or are included by the
6
/// \ref alib_manual_modules_impludes "import/include headers".
7
///
8
/// \emoji :copyright: 2013-2025 A-Worx GmbH, Germany.
9
/// Published under \ref mainpage_license "Boost Software License".
10
//==================================================================================================
11
#if !defined(ALIB_C20_MODULES) || ((ALIB_C20_MODULES != 0) && (ALIB_C20_MODULES != 1))
12
# error "Symbol ALIB_C20_MODULES has to be given to the compiler as either 0 or 1"
13
#endif
14
#if ALIB_C20_MODULES
15
module
;
16
#endif
17
// ====================================== Global Fragment ======================================
18
#include "
alib/containers/containers.prepro.hpp
"
19
20
#include <iterator>
21
#include <cmath>
22
#include <algorithm>
23
24
#if defined( _WIN32 ) || defined(__APPLE__)
25
# include <clocale>
26
#endif
27
#if defined(_WIN32)
28
# include <intrin.h>
29
#endif
30
#include <clocale>
31
#include <limits>
32
#include <vector>
33
#include <algorithm>
34
35
// =========================================== Module ==========================================
36
#if ALIB_C20_MODULES
37
/// This is a C++ Module of the \aliblong. Due to the dual-compile option - as either
38
/// C++20 Modules or legacy C++ inclusion, the C++20 Module names are not of further interest
39
/// or use.<br>
40
/// In general, the names equal the names of the header files listed in the chapter
41
/// \ref alib_manual_modules_impludes of the \alib User Manual.
42
/// This chapter, among others, provides further explanations.
43
export
module
ALib.Containers.StringTree
;
44
import
ALib.Lang
;
45
# if ALIB_CONTAINERS
46
import
ALib.Containers.HashTable
;
47
# endif
48
# if ALIB_STRINGS
49
import
ALib.Strings
;
50
# endif
51
#else
52
#include "
ALib.Lang.H
"
53
#include "
ALib.Containers.HashTable.H
"
54
#include "
ALib.Strings.H
"
55
#endif
56
57
// ========================================== Exports ==========================================
58
#if ALIB_C20_MODULES
59
export
import
ALib.Containers.init
;
60
#else
61
# ifndef ALIB_GUARD_CONTAINERS_INIT
62
# define ALIB_GUARD_CONTAINERS_INIT 1
63
# include "
alib/containers/recycling.inl
"
64
# include "
alib/containers/valuedescriptor.inl
"
65
# endif
66
#endif
67
#include "
alib/containers/detail/stringtreebase.inl
"
68
#if ALIB_STRINGS
69
# include "
alib/containers/stringtree.inl
"
70
#endif
71
72
73
ALib.Containers.HashTable.H
ALib.Lang.H
ALib.Strings.H
containers.prepro.hpp
ALib.Containers.HashTable
ALib.Containers.StringTree
ALib.Containers.init
ALib.Lang
ALib.Strings
recycling.inl
stringtree.inl
stringtreebase.inl
valuedescriptor.inl