detector

group turbo_unicode_detector

Functions

template<typename Engine = turbo::unicode::default_engine, typename turbo::check_requires<turbo::unicode::is_unicode_engine<Engine>> = 0>
inline turbo::EncodingType auto_detect_encoding(const char *input, size_t length) noexcept

auto_detect_encoding auto detect encoding from input buffer, return EncodingType Example:

Implementation.

auto encoding = auto_detect_encoding(input, length);
// encoding is EncodingType::kUtf8 or EncodingType::kUtf16 or EncodingType::kUtf32
If you want to use your own engine, you can use like this:
auto encoding = auto_detect_encoding<YourEngine>(input, length);
// encoding is EncodingType::kUtf8 or EncodingType::kUtf16 or EncodingType::kUtf32

Template Parameters:

Engine – default is turbo::unicode::default_engine

Parameters:
  • input – input buffer

  • length – input buffer length

Returns:

EncodingType that auto detected

template<typename Engine = turbo::unicode::default_engine, typename turbo::check_requires<turbo::unicode::is_unicode_engine<Engine>> = 0>
inline int detect_encodings(const char *input, size_t length) noexcept

detect_encodings detect encodings from input buffer, return EncodingType Example:

auto encoding = detect_encodings(input, length);
// encoding is EncodingType::kUtf8 or EncodingType::kUtf16 or EncodingType::kUtf32
If you want to use your own engine, you can use like this:
auto encoding = detect_encodings<YourEngine>(input, length);
// encoding is EncodingType::kUtf8 or EncodingType::kUtf16 or EncodingType::kUtf32

Template Parameters:

Engine – default is turbo::unicode::default_engine

Parameters:
  • input – input buffer

  • length – input buffer length

Returns:

EncodingType that auto detected