count_result
-
template<typename _Input, typename _State>
class count_result : public ztd::text::stateless_count_result<_Input> The result of counting operations (such as ztd_text_count_as_encoded and ztd_text_count_as_encoded).
Public Functions
-
template<typename _ArgInput, typename _ArgState>
inline constexpr count_result(_ArgInput &&__input, ::std::size_t __count, _ArgState &&__state, encoding_error __error_code = encoding_error::ok) Constructs a ztd::text::count_result, defaulting the error code to ztd::text::encoding_error::ok if not provided.
- Parameters:
__input – [in] The input range to store.
__count – [in] The number of code points or code units successfully counted.
__state – [in] The state related to the encoding for the counting operation.
__error_code – [in] The error code for the encode operation, taken as the first of either the encode or decode operation that failed.
-
template<typename _ArgInput, typename _ArgState>
inline constexpr count_result(_ArgInput &&__input, ::std::size_t __count, _ArgState &&__state, encoding_error __error_code, ::std::size_t __error_count) Constructs a ztd::text::count_result with the provided parameters and information, including whether or not an error was handled.
- Parameters:
__input – [in] The input range to store.
__count – [in] The number of code points or code units successfully counted.
__state – [in] The state related to the encode operation that counted the code units.
__error_code – [in] The error code for the encode operation, taken as the first of either the encode or decode operation that failed.
__error_count – [in] Whether or not an error was handled. Some error handlers are corrective (see ztd::text::replacement_handler_t), and so the error code is not enough to determine if the handler was invoked. This allows the value to be provided directly when constructing this result type.
-
inline constexpr bool errors_were_handled() const noexcept
Whether or not any errors were handled.
- Returns:
Simply checks whether
error_count
is greater than 0.
Public Members
-
::ztd::reference_wrapper<_State> state
A reference to the state of the associated Encoding used for counting.
-
_Input input
The reconstructed input_view object, with its .begin() incremented by the number of code units successfully read (can be identical to .begin() on original range on failure).
-
::std::size_t count
The number of code units or code points counted successfully, so far.
-
encoding_error error_code
The kind of error that occured, if any.
-
::std::size_t error_count
The number of times an error occurred in the processed input text.
Remark
This number may be greater than one despite
error_code
being ztd::text::encoding_error::ok, as some error handlers will encounter an error but “fix” the text (e.g. ztd::text::skip_handler_t or ztd::text::replacement_handler_t).
-
template<typename _ArgInput, typename _ArgState>