; * src/coding.h (surrogates_to_codepoint): Add prototype.

This commit is contained in:
Eli Zaretskii 2018-01-15 14:15:53 +02:00
parent adb9e75d91
commit f3fafd2417

View file

@ -674,18 +674,6 @@ struct coding_system
#define UTF_16_LOW_SURROGATE_P(val) \
(((val) & 0xFC00) == 0xDC00)
/* Return the Unicode code point for the given UTF-16 surrogates. */
INLINE int
surrogates_to_codepoint (int low, int high)
{
eassert (0 <= low && low <= 0xFFFF);
eassert (0 <= high && high <= 0xFFFF);
eassert (UTF_16_LOW_SURROGATE_P (low));
eassert (UTF_16_HIGH_SURROGATE_P (high));
return 0x10000 + (low - 0xDC00) + ((high - 0xD800) * 0x400);
}
/* Extern declarations. */
extern Lisp_Object code_conversion_save (bool, bool);
extern bool encode_coding_utf_8 (struct coding_system *);
@ -712,6 +700,8 @@ extern void decode_coding_object (struct coding_system *,
extern void encode_coding_object (struct coding_system *,
Lisp_Object, ptrdiff_t, ptrdiff_t,
ptrdiff_t, ptrdiff_t, Lisp_Object);
/* Defined in this file. */
INLINE int surrogates_to_codepoint (int, int);
#if defined (WINDOWSNT) || defined (CYGWIN)
@ -756,6 +746,18 @@ extern Lisp_Object from_unicode_buffer (const wchar_t *wstr);
} while (false)
/* Return the Unicode code point for the given UTF-16 surrogates. */
INLINE int
surrogates_to_codepoint (int low, int high)
{
eassert (0 <= low && low <= 0xFFFF);
eassert (0 <= high && high <= 0xFFFF);
eassert (UTF_16_LOW_SURROGATE_P (low));
eassert (UTF_16_HIGH_SURROGATE_P (high));
return 0x10000 + (low - 0xDC00) + ((high - 0xD800) * 0x400);
}
extern Lisp_Object preferred_coding_system (void);