ALib C++ Library
Library Version: 2510 R0
Documentation generated by doxygen
Loading...
Searching...
No Matches
fmtexceptions.inl
Go to the documentation of this file.
1//==================================================================================================
2/// \file
3/// This header-file is part of module \alib_format of the \aliblong.
4///
5/// \emoji :copyright: 2013-2025 A-Worx GmbH, Germany.
6/// Published under \ref mainpage_license "Boost Software License".
7//==================================================================================================
9
10//==================================================================================================
11/// Enumeration of exceptions thrown with classes found in sub-namespace #alib::format
12/// of module \alib_format.
13//==================================================================================================
14enum class FMTExceptions
15{
16 /// Argument index '0' not allowed.
18
19 /// Argument index greater than number of arguments available.
21
22 /// Incompatible type code given argument type found.
24
25 // Formatter Python Style
26 /// Thrown by \alib{format;FormatterPythonStyle;FormatterPythonStyle}:
27 /// Closing bracket <c>'}'</c> not found.
29
30 /// Thrown by \alib{format;FormatterPythonStyle;FormatterPythonStyle}:
31 /// Missing precision integral value after <c>'.'</c> character.
33
34 /// Thrown by \alib{format;FormatterPythonStyle;FormatterPythonStyle}:
35 /// Duplicate type code.
37
38 /// Thrown by \alib{format;FormatterPythonStyle;FormatterPythonStyle}:
39 /// Unknown type code.
41
42 /// Thrown by \alib{format;FormatterPythonStyle;FormatterPythonStyle}:
43 /// Expected <c>'!'</c> not found.
45
46 /// Thrown by \alib{format;FormatterPythonStyle;FormatterPythonStyle}:
47 /// Unknown conversion after <c>'!'</c>.
49
50 /// Thrown by \alib{format;FormatterPythonStyle;FormatterPythonStyle}:
51 /// Precision specification not allowed with integer types.
53
54 /// Thrown by \alib{format;FormatterPythonStyle;FormatterPythonStyle}:
55 /// Missing replacement strings after conversion <c>!Replace</c>.
57
58
59
60 // Formatter Java Style
61 /// Thrown by \alib{format;FormatterJavaStyle;FormatterJavaStyle}:
62 /// Formatting of negative values in brackets is not supported.
64
65 /// Thrown by \alib{format;FormatterJavaStyle;FormatterJavaStyle}:
66 /// Missing precision integral value after <c>'.'</c> character.
68
69 /// Thrown by \alib{format;FormatterJavaStyle;FormatterJavaStyle}:
70 /// Output of floating point values in hexadecimal format not supported.
72
73 /// Thrown by \alib{format;FormatterJavaStyle;FormatterJavaStyle}:
74 /// The alternate form '#' is not supported with given conversion.
76
77 /// Thrown by \alib{format;FormatterJavaStyle;FormatterJavaStyle}:
78 /// Precision specification is not supported with given conversion.
80
81 /// Thrown by \alib{format;FormatterJavaStyle;FormatterJavaStyle}:
82 /// Unknown conversion suffix with data/time conversion.
84
85 /// Thrown by \alib{format;FormatterJavaStyle;FormatterJavaStyle}:
86 /// Unknown conversion character.
88
89
90 // PropertyFormatter and PropertyFormatters
91 /// Thrown by constructor of \alib{format;PropertyFormatter}
92 /// when a property identifier parsed from the format string has no corresponding entry in the
93 /// \alib{format;PropertyFormatter::TCallbackTable;TCallbackTable} provided.
95
96 /// Exception entry added in method \alib{format;PropertyFormatter::Format}
97 /// when the underlying formatter throws.
99
100 /// Thrown by \alib{format;PropertyFormatters::Format} if a configuration variable
101 /// cannot be loaded or is empty.
102 ///
103 /// \note To prevent this, software using this class should provide
104 /// \alib{camp::Camp;GetResourcePool;resourced} default values for each formatter variable.
106
107
108 // class Paragraphs
109 /// Thrown by \alib{format;Paragraphs::AddMarked}
110 /// when an unknown marker token was found.
112
113 /// Thrown by \alib{format;Paragraphs::AddMarked}
114 /// when a property identifier parsed from the format string has no corresponding entry in the
115 /// \alib{format;PropertyFormatter::TCallbackTable;TCallbackTable} provided.
117
118}; // FMTExceptions
119
120} // namespace [alib::format]
121
122
125
#define ALIB_ENUMS_ASSIGN_RECORD(TEnum, TRecord)
#define ALIB_BOXING_VTABLE_DECLARE(TMapped, Identifier)
#define ALIB_EXPORT
Definition alib.inl:488
@ ArgumentIndexOutOfBounds
Argument index greater than number of arguments available.
@ ArgumentIndexIs0
Argument index '0' not allowed.
@ IncompatibleTypeCode
Incompatible type code given argument type found.