xref: /netbsd-src/external/bsd/less/dist/charset.h (revision 838f5788460f0f133b15d706e644d692a9d4d6ec)
1 /*	$NetBSD: charset.h,v 1.4 2023/10/06 05:49:49 simonb Exp $	*/
2 
3 /*
4  * Copyright (C) 1984-2023  Mark Nudelman
5  *
6  * You may distribute under the terms of either the GNU General Public
7  * License or the Less License, as specified in the README file.
8  *
9  * For more information, see the README file.
10  */
11 
12 #define IS_ASCII_OCTET(c)   (((c) & 0x80) == 0)
13 #define IS_UTF8_TRAIL(c)    (((c) & 0xC0) == 0x80)
14 #define IS_UTF8_LEAD2(c)    (((c) & 0xE0) == 0xC0)
15 #define IS_UTF8_LEAD3(c)    (((c) & 0xF0) == 0xE0)
16 #define IS_UTF8_LEAD4(c)    (((c) & 0xF8) == 0xF0)
17 #define IS_UTF8_LEAD5(c)    (((c) & 0xFC) == 0xF8)
18 #define IS_UTF8_LEAD6(c)    (((c) & 0xFE) == 0xFC)
19 #define IS_UTF8_INVALID(c)  (((c) & 0xFE) == 0xFE)
20 #define IS_UTF8_LEAD(c)     (((c) & 0xC0) == 0xC0 && !IS_UTF8_INVALID(c))
21