codecvt::do_in

A virtual function called to convert a sequence of external Bytes to a sequence of internal CharTypes.

virtual result do_in(
    StateType& _State,
    const Byte* _First1, 
    const Byte* _Last1, 
    const Byte*& _Next1,
    CharType* _First2,
    CharType* _Last2,
    CharType*& _Next2,
) const;

Parameters

  • _State
    The conversion state that is maintained between calls to the member function.

  • _First1
    Pointer to the beginning of the sequence to be converted.

  • _Last1
    Pointer to the end of the sequence to be converted.

  • _Next1
    Pointer beyond the end of the converted sequence, to the first unconverted character.

  • _First2
    Pointer to the beginning of the converted sequence.

  • _Last2
    Pointer to the end of the converted sequence.

  • _Next2
    Pointer to the CharType that comes after the last converted CharType, to the first unaltered character in the destination sequence.

Return Value

A return that indicates the success, partial success, or failure of the operation. The function returns:

  • codecvt_base::error if the source sequence is ill formed.

  • codecvt_base::noconv if the function performs no conversion.

  • codecvt_base::ok if the conversion succeeds.

  • codecvt_base::partial if the source is insufficient or if the destination is not large enough, for the conversion to succeed.

Remarks

_State must represent the initial conversion state at the beginning of a new source sequence. The function alters its stored value as needed to reflect the current state of a successful conversion. Its stored value is otherwise unspecified.

Example

See the example for in, which calls do_in.

Requirements

Header: <locale>

Namespace: std

See Also

Reference

codecvt Class

Other Resources

codecvt Members