ALib C++ Library
Library Version: 2510 R0
Documentation generated by doxygen
Loading...
Searching...
No Matches
strings_monomem.cpp
1// #################################################################################################
2// ALib C++ Library
3//
4// Copyright 2013-2025 A-Worx GmbH, Germany
5// Published under 'Boost Software License' (a free software license, see LICENSE.txt)
6// #################################################################################################
7#include "alib_precompile.hpp"
8#if !defined(ALIB_C20_MODULES) || ((ALIB_C20_MODULES != 0) && (ALIB_C20_MODULES != 1))
9# error "Symbol ALIB_C20_MODULES has to be given to the compiler as either 0 or 1"
10#endif
11#if ALIB_C20_MODULES
12 module;
13#endif
14// ====================================== Global Fragment ======================================
17#if ALIB_MONOMEM && ALIB_DEBUG
18# include <cstring>
19#endif
20// =========================================== Module ==========================================
21#if ALIB_C20_MODULES
22 module ALib.Strings;
23 import ALib.Lang;
24 import ALib.Monomem;
25#else
26# include "ALib.Strings.H"
27# include "ALib.Lang.H"
28# include "ALib.Monomem.H"
29#endif
30
31// ====================================== Implementation =======================================
32#if ALIB_MONOMEM && ALIB_DEBUG && !DOXYGEN
33
34// #################################################################################################
35// Instantiation of monomem::DbgDumpStatistics for TMonoAllocator<lang::HeapAllocator>.
36// #################################################################################################
38
39namespace alib::monomem {
41}
42
43#endif //ALIB_MONOMEM && ALIB_DEBUG && !DOXYGEN
44
45//==================================================================================================
46//==== AString versions using Mono- and PoolAllocator (instantiations)
47//==================================================================================================
48#define ALIB_STRINGS_TASTRING_INSTANTIATION
49# include "alib/strings/detail/tastringimpl.inl"
50
51#define ALIB_STRINGS_TASTRING_INSTANTIATION
52# define ASTR_TALLOC_SPEC monomem::TMonoAllocator<lang::HeapAllocator>
53# define ASTR_TCHAR_SPEC ALIB_CHAR_TYPE_ID_X
54# include "alib/strings/detail/tastring_ca_impl.inl.inl"
55
56# define ASTR_TALLOC_SPEC monomem::TMonoAllocator<lang::HeapAllocator>
57# define ASTR_TCHAR_SPEC ALIB_CHAR_TYPE_ID_W
58# include "alib/strings/detail/tastring_ca_impl.inl.inl"
59
60# define ASTR_TALLOC_SPEC monomem::TMonoAllocator<lang::HeapAllocator>
61# define ASTR_TCHAR_SPEC ALIB_CHAR_TYPE_ID_N
62# include "alib/strings/detail/tastring_ca_impl.inl.inl"
63
64
65# define ASTR_TALLOC_SPEC PoolAllocator
66# define ASTR_TCHAR_SPEC ALIB_CHAR_TYPE_ID_X
67# include "alib/strings/detail/tastring_ca_impl.inl.inl"
68
69# define ASTR_TALLOC_SPEC PoolAllocator
70# define ASTR_TCHAR_SPEC ALIB_CHAR_TYPE_ID_W
71# include "alib/strings/detail/tastring_ca_impl.inl.inl"
72
73# define ASTR_TALLOC_SPEC PoolAllocator
74# define ASTR_TCHAR_SPEC ALIB_CHAR_TYPE_ID_N
75# include "alib/strings/detail/tastring_ca_impl.inl.inl"
76
77#undef ALIB_STRINGS_TASTRING_INSTANTIATION
78
#define ALIB_DLL
Definition alib.inl:496
NAString DbgDumpStatistics(monomem::TMonoAllocator< TAllocator > &ma)
strings::TAString< nchar, lang::HeapAllocator > NAString
Type alias in namespace alib.