#[repr(transparent)]pub struct IConv(_);
Converts a string from one character set to another.
Note that you should use [
iconv()][crate::iconv()] for streaming conversions.
Despite the fact that
bytes_read can return information about partial
characters, the g_convert_… functions are not generally suitable
for streaming. If the underlying converter maintains internal state,
then this won’t be preserved across successive calls to
convert_with_fallback(). (An example of
this is the GNU C converter for CP1255 which does not emit a base
character until it knows that the next character is not a mark that
could combine with the base character.)
Characters which are valid in the input character set, but which have no
representation in the output character set will result in a
ConvertError::IllegalSequence error. This is in contrast to the
specification, which leaves this behaviour implementation defined. Note that
this is the same error code as is returned for an invalid byte sequence in
the input character set. To get defined behaviour for conversion of
unrepresentable characters, use
the string to convert.
conversion descriptor from
If the conversion was successful, a newly allocated buffer
containing the converted string, which must be freed with
error will be set.
location to store the number of bytes in
the input string that were successfully converted, or
Even if the conversion was successful, this may be
len if there were partial characters
at the end of the input. If the error
ConvertError::IllegalSequence occurs, the value
stored will be the byte offset after the last valid
Returns the argument unchanged.