Home | History | Annotate | Download | only in enc
      1 /* Copyright 2013 Google Inc. All Rights Reserved.
      2 
      3    Distributed under MIT license.
      4    See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
      5 */
      6 
      7 /* Heuristics for deciding about the UTF8-ness of strings. */
      8 
      9 #ifndef BROTLI_ENC_UTF8_UTIL_H_
     10 #define BROTLI_ENC_UTF8_UTIL_H_
     11 
     12 #include "../common/platform.h"
     13 #include <brotli/types.h>
     14 
     15 #if defined(__cplusplus) || defined(c_plusplus)
     16 extern "C" {
     17 #endif
     18 
     19 static const double kMinUTF8Ratio = 0.75;
     20 
     21 /* Returns 1 if at least min_fraction of the bytes between pos and
     22    pos + length in the (data, mask) ring-buffer is UTF8-encoded, otherwise
     23    returns 0. */
     24 BROTLI_INTERNAL BROTLI_BOOL BrotliIsMostlyUTF8(
     25     const uint8_t* data, const size_t pos, const size_t mask,
     26     const size_t length, const double min_fraction);
     27 
     28 #if defined(__cplusplus) || defined(c_plusplus)
     29 }  /* extern "C" */
     30 #endif
     31 
     32 #endif  /* BROTLI_ENC_UTF8_UTIL_H_ */
     33