\hypertarget{icu_8h}{}\doxysection{kblib/icu.h File Reference} \label{icu_8h}\index{kblib/icu.h@{kblib/icu.h}} Provides some basic interfaces to make using ICU smoother. {\ttfamily \#include \char`\"{}tdecl.\+h\char`\"{}}\newline {\ttfamily \#include $<$ostream$>$}\newline {\ttfamily \#include $<$string$>$}\newline {\ttfamily \#include $<$typeinfo$>$}\newline {\ttfamily \#include $<$unicode/unistr.\+h$>$}\newline Include dependency graph for icu.\+h\+:\nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=350pt]{icu_8h__incl} \end{center} \end{figure} This graph shows which files directly or indirectly include this file\+:\nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=266pt]{icu_8h__dep__incl} \end{center} \end{figure} \doxysubsection*{Namespaces} \begin{DoxyCompactItemize} \item namespace \mbox{\hyperlink{namespacekblib}{kblib}} \begin{DoxyCompactList}\small\item\em The main namespace in which all entities from kblib are defined. \end{DoxyCompactList}\item namespace \mbox{\hyperlink{namespacekblib_1_1icu__str__ops}{kblib\+::icu\+\_\+str\+\_\+ops}} \end{DoxyCompactItemize} \doxysubsection*{Functions} \begin{DoxyCompactItemize} \item {\footnotesize template$<$typename string = std\+::string$>$ }\\auto \mbox{\hyperlink{namespacekblib_a27540546baa5adb2684d6b01b82d9594}{kblib\+::to\+UTF8}} (const icu\+::\+Unicode\+String \&s) -\/$>$ string \begin{DoxyCompactList}\small\item\em Convert a Unicode\+String to a UTF-\/8 string. \end{DoxyCompactList}\item {\footnotesize template$<$typename string $>$ }\\auto \mbox{\hyperlink{namespacekblib_aa90b416613cc12193d5e239ab10ca8a5}{kblib\+::from\+UTF8}} (string s) -\/$>$ icu\+::\+Unicode\+String \begin{DoxyCompactList}\small\item\em Convert a UTF-\/8 string into a Unicode\+String. \end{DoxyCompactList}\item {\footnotesize template$<$typename string = std\+::u32string$>$ }\\auto \mbox{\hyperlink{namespacekblib_a1308a2a6edc5a4ed26a7c5b5dea812d1}{kblib\+::to\+UTF32}} (const icu\+::\+Unicode\+String \&s) -\/$>$ string \begin{DoxyCompactList}\small\item\em Converts a Unicode\+String to UTF-\/32. \end{DoxyCompactList}\item {\footnotesize template$<$typename string $>$ }\\auto \mbox{\hyperlink{namespacekblib_aca43a53354402a1f1352b0da9ac32fee}{kblib\+::from\+UTF32}} (string s) -\/$>$ icu\+::\+Unicode\+String \begin{DoxyCompactList}\small\item\em Converts a UTF-\/32 string into a Unicode\+String. \end{DoxyCompactList}\item auto \mbox{\hyperlink{namespacekblib_1_1icu__str__ops_ace81bc910484f6efe549883206d4ddae}{kblib\+::icu\+\_\+str\+\_\+ops\+::operator$<$$<$}} (std\+::ostream \&os, const icu\+::\+Unicode\+String \&str) -\/$>$ std\+::ostream \& \begin{DoxyCompactList}\small\item\em Provides a transcoding stream insertion operator for Unicode\+Strings. \end{DoxyCompactList}\item auto \mbox{\hyperlink{namespacekblib_1_1icu__str__ops_a4ff4a1606ef53a0e2004f84954073fcf}{kblib\+::icu\+\_\+str\+\_\+ops\+::operator+}} (std\+::string lhs, const icu\+::\+Unicode\+String \&str) -\/$>$ std\+::string \begin{DoxyCompactList}\small\item\em Give the strange ICU interface for concatenating UTF-\/8 and Unicode\+Strings a more idiomatic name in the form of operator+. \end{DoxyCompactList}\item auto \mbox{\hyperlink{namespacekblib_1_1icu__str__ops_a300f61654dd90dbbfe58efb8d6ed414c}{kblib\+::icu\+\_\+str\+\_\+ops\+::operator+}} (icu\+::\+Unicode\+String lhs, const std\+::string \&rhs) -\/$>$ icu\+::\+Unicode\+String \item {\footnotesize template$<$typename T $>$ }\\auto \mbox{\hyperlink{namespacekblib_a8f83f373124cb00091260e5bab6c4b60}{kblib\+::from\+Str}} (const icu\+::\+Unicode\+String \&val, const char $\ast$type=typeid(T).name()) -\/$>$ T \begin{DoxyCompactList}\small\item\em Reencodes val to UTF-\/8 and then converts it to T using the primary overload. \end{DoxyCompactList}\end{DoxyCompactItemize} \doxysubsection{Detailed Description} Provides some basic interfaces to make using ICU smoother. \begin{DoxyAuthor}{Author} killerbee \end{DoxyAuthor} \begin{DoxyDate}{Date} 2019-\/2021 \end{DoxyDate} \begin{DoxyCopyright}{Copyright} GNU General Public Licence v3.\+0 \end{DoxyCopyright} Definition in file \mbox{\hyperlink{icu_8h_source}{icu.\+h}}.