stateless_transcode_result¶

template<typename _Input, typename _Output>
class ztd::text::stateless_transcode_result¶

The result of transcoding operations (such as ztd_text_transcode) that specifically do not include a reference to the state.

Subclassed by transcode_result< _Input, _Output, _FromState, _ToState >

Public Functions

template<typename _ArgInput, typename _ArgOutput>
inline constexpr stateless_transcode_result(_ArgInput &&__input, _ArgOutput &&__output, encoding_error __error_code = encoding_error::ok) noexcept(noexcept(stateless_transcode_result(::std::forward<_ArgInput>(__input), ::std::forward<_ArgOutput>(__output), __error_code, __error_code != encoding_error::ok)))¶

Constructs a ztd::text::stateless_transcode_result, defaulting the error code to ztd::text::encoding_error::ok if not provided.

Parameters
  • __input – [in] The input range to store.

  • __output – [in] The output range to store.

  • __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 _ArgOutput>
inline constexpr stateless_transcode_result(_ArgInput &&__input, _ArgOutput &&__output, encoding_error __error_code, ::std::size_t __handled_errors) noexcept(::std::is_nothrow_constructible_v<_Input, _ArgInput> && ::std::is_nothrow_constructible_v<_Output, _ArgOutput>)¶

Constructs a ztd::text::stateless_transcode_result with the provided parameters and information, including whether or not an error was handled.

Parameters
  • __input – [in] The input range to store.

  • __output – [in] The output range to store.

  • __error_code – [in] The error code for the encode operation, taken as the first of either the encode or decode operation that failed.

  • __handled_errors – [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 handled_errors is greater than 0.

Public Members

_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).

_Output output¶

The reconstructed output_view object, with its .begin() incremented by the number of code units successfully written (can be identical to .begin() on original range on failure).

encoding_error error_code¶

The kind of error that occured, if any.

::std::size_t handled_errors¶

Whether or not the error handler was invoked, regardless of if the error_code is set or not set to ztd::text::encoding_error::ok.