ALib C++ Library
Library Version: 2412 R0
Documentation generated by doxygen
Loading...
Searching...
No Matches
qt_strings.hpp
Go to the documentation of this file.
1//==================================================================================================
2/// \file
3/// This header file is part of the \aliblong.
4///
5/// \emoji :copyright: 2013-2024 A-Worx GmbH, Germany.
6/// Published under \ref mainpage_license "Boost Software License".
7///
8/// <b>Legal Notice:</b>
9/// This is an optional extension header to provide compatibility between \alib and
10/// the QT class library.
11/// All information about QT is found at https://www.qt.io
12/// \alib otherwise does not use or rely on QT.
13/// The use of QT is bound to the QT license restrictions.
14//==================================================================================================
15#ifndef HPP_ALIB_COMPATIBILITY_QT_STRINGS
16#define HPP_ALIB_COMPATIBILITY_QT_STRINGS 1
17#pragma once
18#if !defined(DOXYGEN)
19# include "alib/alib.hpp"
20#endif
21
22#if !defined(ALIB_QT_LIB_NOT_FOUND) // this is only set in an automated test project
23
26
27namespace alib::strings {
28
29#if DOXYGEN
30namespace APPENDABLES {
31#endif
32
33// #############################################################################################
34// T_Append
35// #############################################################################################
36
37/// Specialization of type-traits struct \alib{strings;T_Append} for type \c QChar.
38template<typename TChar, typename TAllocator> struct T_Append<QChar, TChar, TAllocator>
39{
40 //==============================================================================================
41 /// Appends \p{src} of type \b QChar to \p{target}.
42 ///
43 /// @param target The AString to append \p{src} to.
44 /// @param src The source string.
45 //==============================================================================================
46 void operator()( TAString<TChar,TAllocator>& target, const QChar& src )
47 {
48 target._( static_cast<ALIB_QTCHAR>( src.unicode() ) );
49 }
50};
51
52#if DOXYGEN
53} // namespace alib::strings[::APPENDABLES]
54#endif
55
56} // namespace [alib::strings]
57
58
59#endif // !defined(ALIB_QT_LIB_NOT_FOUND) // this is only set in an automated test project
60#endif // HPP_ALIB_COMPATIBILITY_QT_STRINGS
61
TAString & _(const TString< TChar > &src, integer regionStart, integer regionLength=MAX_LEN)
void operator()(TAString< TChar, TAllocator > &target, const QChar &src)