charset.h revision 161475
1161475Sdelphij/*
2161475Sdelphij * Copyright (C) 2005  Mark Nudelman
3161475Sdelphij *
4161475Sdelphij * You may distribute under the terms of either the GNU General Public
5161475Sdelphij * License or the Less License, as specified in the README file.
6161475Sdelphij *
7161475Sdelphij * For more information about less, or for information on how to
8161475Sdelphij * contact the author, see the README file.
9161475Sdelphij */
10161475Sdelphij
11161475Sdelphij#define IS_ASCII_OCTET(c)   (((c) & 0x80) == 0)
12161475Sdelphij#define IS_UTF8_TRAIL(c)    (((c) & 0xC0) == 0x80)
13161475Sdelphij#define IS_UTF8_LEAD2(c)    (((c) & 0xE0) == 0xC0)
14161475Sdelphij#define IS_UTF8_LEAD3(c)    (((c) & 0xF0) == 0xE0)
15161475Sdelphij#define IS_UTF8_LEAD4(c)    (((c) & 0xF8) == 0xF0)
16161475Sdelphij#define IS_UTF8_LEAD5(c)    (((c) & 0xFC) == 0xF8)
17161475Sdelphij#define IS_UTF8_LEAD6(c)    (((c) & 0xFE) == 0xFC)
18161475Sdelphij#define IS_UTF8_INVALID(c)  (((c) & 0xFE) == 0xFE)
19161475Sdelphij#define IS_UTF8_LEAD(c)     (((c) & 0xC0) == 0xC0 && !IS_UTF8_INVALID(c))
20