]> git.proxmox.com Git - ceph.git/blame - ceph/src/boost/libs/spirit/include/boost/spirit/home/support/char_encoding/iso8859_1.hpp
bump version to 12.2.2-pve1
[ceph.git] / ceph / src / boost / libs / spirit / include / boost / spirit / home / support / char_encoding / iso8859_1.hpp
CommitLineData
7c673cae
FG
1/*=============================================================================
2 Copyright (c) 2001-2011 Hartmut Kaiser
3 Copyright (c) 2001-2011 Joel de Guzman
4
5 Distributed under the Boost Software License, Version 1.0. (See accompanying
6 file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
7=============================================================================*/
8#if !defined(BOOST_SPIRIT_ISO8859_1_APRIL_26_2006_1106PM)
9#define BOOST_SPIRIT_ISO8859_1_APRIL_26_2006_1106PM
10
11#if defined(_MSC_VER)
12#pragma once
13#endif
14
15#include <climits>
16#include <boost/assert.hpp>
17#include <boost/cstdint.hpp>
18
19///////////////////////////////////////////////////////////////////////////////
20// constants used to classify the single characters
21///////////////////////////////////////////////////////////////////////////////
22#define BOOST_CC_DIGIT 0x0001
23#define BOOST_CC_XDIGIT 0x0002
24#define BOOST_CC_ALPHA 0x0004
25#define BOOST_CC_CTRL 0x0008
26#define BOOST_CC_LOWER 0x0010
27#define BOOST_CC_UPPER 0x0020
28#define BOOST_CC_SPACE 0x0040
29#define BOOST_CC_PUNCT 0x0080
30
31namespace boost { namespace spirit { namespace char_encoding
32{
33 // The detection of isgraph(), isprint() and isblank() is done programmatically
34 // to keep the character type table small. Additionally, these functions are
35 // rather seldom used and the programmatic detection is very simple.
36
37 ///////////////////////////////////////////////////////////////////////////
38 // ISO 8859-1 character classification table
39 //
40 // the comments intentionally contain non-ascii characters
41 // boostinspect:noascii
42 ///////////////////////////////////////////////////////////////////////////
43 const unsigned char iso8859_1_char_types[] =
44 {
45 /* NUL 0 0 */ BOOST_CC_CTRL,
46 /* SOH 1 1 */ BOOST_CC_CTRL,
47 /* STX 2 2 */ BOOST_CC_CTRL,
48 /* ETX 3 3 */ BOOST_CC_CTRL,
49 /* EOT 4 4 */ BOOST_CC_CTRL,
50 /* ENQ 5 5 */ BOOST_CC_CTRL,
51 /* ACK 6 6 */ BOOST_CC_CTRL,
52 /* BEL 7 7 */ BOOST_CC_CTRL,
53 /* BS 8 8 */ BOOST_CC_CTRL,
54 /* HT 9 9 */ BOOST_CC_CTRL|BOOST_CC_SPACE,
55 /* NL 10 a */ BOOST_CC_CTRL|BOOST_CC_SPACE,
56 /* VT 11 b */ BOOST_CC_CTRL|BOOST_CC_SPACE,
57 /* NP 12 c */ BOOST_CC_CTRL|BOOST_CC_SPACE,
58 /* CR 13 d */ BOOST_CC_CTRL|BOOST_CC_SPACE,
59 /* SO 14 e */ BOOST_CC_CTRL,
60 /* SI 15 f */ BOOST_CC_CTRL,
61 /* DLE 16 10 */ BOOST_CC_CTRL,
62 /* DC1 17 11 */ BOOST_CC_CTRL,
63 /* DC2 18 12 */ BOOST_CC_CTRL,
64 /* DC3 19 13 */ BOOST_CC_CTRL,
65 /* DC4 20 14 */ BOOST_CC_CTRL,
66 /* NAK 21 15 */ BOOST_CC_CTRL,
67 /* SYN 22 16 */ BOOST_CC_CTRL,
68 /* ETB 23 17 */ BOOST_CC_CTRL,
69 /* CAN 24 18 */ BOOST_CC_CTRL,
70 /* EM 25 19 */ BOOST_CC_CTRL,
71 /* SUB 26 1a */ BOOST_CC_CTRL,
72 /* ESC 27 1b */ BOOST_CC_CTRL,
73 /* FS 28 1c */ BOOST_CC_CTRL,
74 /* GS 29 1d */ BOOST_CC_CTRL,
75 /* RS 30 1e */ BOOST_CC_CTRL,
76 /* US 31 1f */ BOOST_CC_CTRL,
77 /* SP 32 20 */ BOOST_CC_SPACE,
78 /* ! 33 21 */ BOOST_CC_PUNCT,
79 /* " 34 22 */ BOOST_CC_PUNCT,
80 /* # 35 23 */ BOOST_CC_PUNCT,
81 /* $ 36 24 */ BOOST_CC_PUNCT,
82 /* % 37 25 */ BOOST_CC_PUNCT,
83 /* & 38 26 */ BOOST_CC_PUNCT,
84 /* ' 39 27 */ BOOST_CC_PUNCT,
85 /* ( 40 28 */ BOOST_CC_PUNCT,
86 /* ) 41 29 */ BOOST_CC_PUNCT,
87 /* * 42 2a */ BOOST_CC_PUNCT,
88 /* + 43 2b */ BOOST_CC_PUNCT,
89 /* , 44 2c */ BOOST_CC_PUNCT,
90 /* - 45 2d */ BOOST_CC_PUNCT,
91 /* . 46 2e */ BOOST_CC_PUNCT,
92 /* / 47 2f */ BOOST_CC_PUNCT,
93 /* 0 48 30 */ BOOST_CC_DIGIT|BOOST_CC_XDIGIT,
94 /* 1 49 31 */ BOOST_CC_DIGIT|BOOST_CC_XDIGIT,
95 /* 2 50 32 */ BOOST_CC_DIGIT|BOOST_CC_XDIGIT,
96 /* 3 51 33 */ BOOST_CC_DIGIT|BOOST_CC_XDIGIT,
97 /* 4 52 34 */ BOOST_CC_DIGIT|BOOST_CC_XDIGIT,
98 /* 5 53 35 */ BOOST_CC_DIGIT|BOOST_CC_XDIGIT,
99 /* 6 54 36 */ BOOST_CC_DIGIT|BOOST_CC_XDIGIT,
100 /* 7 55 37 */ BOOST_CC_DIGIT|BOOST_CC_XDIGIT,
101 /* 8 56 38 */ BOOST_CC_DIGIT|BOOST_CC_XDIGIT,
102 /* 9 57 39 */ BOOST_CC_DIGIT|BOOST_CC_XDIGIT,
103 /* : 58 3a */ BOOST_CC_PUNCT,
104 /* ; 59 3b */ BOOST_CC_PUNCT,
105 /* < 60 3c */ BOOST_CC_PUNCT,
106 /* = 61 3d */ BOOST_CC_PUNCT,
107 /* > 62 3e */ BOOST_CC_PUNCT,
108 /* ? 63 3f */ BOOST_CC_PUNCT,
109 /* @ 64 40 */ BOOST_CC_PUNCT,
110 /* A 65 41 */ BOOST_CC_ALPHA|BOOST_CC_XDIGIT|BOOST_CC_UPPER,
111 /* B 66 42 */ BOOST_CC_ALPHA|BOOST_CC_XDIGIT|BOOST_CC_UPPER,
112 /* C 67 43 */ BOOST_CC_ALPHA|BOOST_CC_XDIGIT|BOOST_CC_UPPER,
113 /* D 68 44 */ BOOST_CC_ALPHA|BOOST_CC_XDIGIT|BOOST_CC_UPPER,
114 /* E 69 45 */ BOOST_CC_ALPHA|BOOST_CC_XDIGIT|BOOST_CC_UPPER,
115 /* F 70 46 */ BOOST_CC_ALPHA|BOOST_CC_XDIGIT|BOOST_CC_UPPER,
116 /* G 71 47 */ BOOST_CC_ALPHA|BOOST_CC_UPPER,
117 /* H 72 48 */ BOOST_CC_ALPHA|BOOST_CC_UPPER,
118 /* I 73 49 */ BOOST_CC_ALPHA|BOOST_CC_UPPER,
119 /* J 74 4a */ BOOST_CC_ALPHA|BOOST_CC_UPPER,
120 /* K 75 4b */ BOOST_CC_ALPHA|BOOST_CC_UPPER,
121 /* L 76 4c */ BOOST_CC_ALPHA|BOOST_CC_UPPER,
122 /* M 77 4d */ BOOST_CC_ALPHA|BOOST_CC_UPPER,
123 /* N 78 4e */ BOOST_CC_ALPHA|BOOST_CC_UPPER,
124 /* O 79 4f */ BOOST_CC_ALPHA|BOOST_CC_UPPER,
125 /* P 80 50 */ BOOST_CC_ALPHA|BOOST_CC_UPPER,
126 /* Q 81 51 */ BOOST_CC_ALPHA|BOOST_CC_UPPER,
127 /* R 82 52 */ BOOST_CC_ALPHA|BOOST_CC_UPPER,
128 /* S 83 53 */ BOOST_CC_ALPHA|BOOST_CC_UPPER,
129 /* T 84 54 */ BOOST_CC_ALPHA|BOOST_CC_UPPER,
130 /* U 85 55 */ BOOST_CC_ALPHA|BOOST_CC_UPPER,
131 /* V 86 56 */ BOOST_CC_ALPHA|BOOST_CC_UPPER,
132 /* W 87 57 */ BOOST_CC_ALPHA|BOOST_CC_UPPER,
133 /* X 88 58 */ BOOST_CC_ALPHA|BOOST_CC_UPPER,
134 /* Y 89 59 */ BOOST_CC_ALPHA|BOOST_CC_UPPER,
135 /* Z 90 5a */ BOOST_CC_ALPHA|BOOST_CC_UPPER,
136 /* [ 91 5b */ BOOST_CC_PUNCT,
137 /* \ 92 5c */ BOOST_CC_PUNCT,
138 /* ] 93 5d */ BOOST_CC_PUNCT,
139 /* ^ 94 5e */ BOOST_CC_PUNCT,
140 /* _ 95 5f */ BOOST_CC_PUNCT,
141 /* ` 96 60 */ BOOST_CC_PUNCT,
142 /* a 97 61 */ BOOST_CC_ALPHA|BOOST_CC_XDIGIT|BOOST_CC_LOWER,
143 /* b 98 62 */ BOOST_CC_ALPHA|BOOST_CC_XDIGIT|BOOST_CC_LOWER,
144 /* c 99 63 */ BOOST_CC_ALPHA|BOOST_CC_XDIGIT|BOOST_CC_LOWER,
145 /* d 100 64 */ BOOST_CC_ALPHA|BOOST_CC_XDIGIT|BOOST_CC_LOWER,
146 /* e 101 65 */ BOOST_CC_ALPHA|BOOST_CC_XDIGIT|BOOST_CC_LOWER,
147 /* f 102 66 */ BOOST_CC_ALPHA|BOOST_CC_XDIGIT|BOOST_CC_LOWER,
148 /* g 103 67 */ BOOST_CC_ALPHA|BOOST_CC_LOWER,
149 /* h 104 68 */ BOOST_CC_ALPHA|BOOST_CC_LOWER,
150 /* i 105 69 */ BOOST_CC_ALPHA|BOOST_CC_LOWER,
151 /* j 106 6a */ BOOST_CC_ALPHA|BOOST_CC_LOWER,
152 /* k 107 6b */ BOOST_CC_ALPHA|BOOST_CC_LOWER,
153 /* l 108 6c */ BOOST_CC_ALPHA|BOOST_CC_LOWER,
154 /* m 109 6d */ BOOST_CC_ALPHA|BOOST_CC_LOWER,
155 /* n 110 6e */ BOOST_CC_ALPHA|BOOST_CC_LOWER,
156 /* o 111 6f */ BOOST_CC_ALPHA|BOOST_CC_LOWER,
157 /* p 112 70 */ BOOST_CC_ALPHA|BOOST_CC_LOWER,
158 /* q 113 71 */ BOOST_CC_ALPHA|BOOST_CC_LOWER,
159 /* r 114 72 */ BOOST_CC_ALPHA|BOOST_CC_LOWER,
160 /* s 115 73 */ BOOST_CC_ALPHA|BOOST_CC_LOWER,
161 /* t 116 74 */ BOOST_CC_ALPHA|BOOST_CC_LOWER,
162 /* u 117 75 */ BOOST_CC_ALPHA|BOOST_CC_LOWER,
163 /* v 118 76 */ BOOST_CC_ALPHA|BOOST_CC_LOWER,
164 /* w 119 77 */ BOOST_CC_ALPHA|BOOST_CC_LOWER,
165 /* x 120 78 */ BOOST_CC_ALPHA|BOOST_CC_LOWER,
166 /* y 121 79 */ BOOST_CC_ALPHA|BOOST_CC_LOWER,
167 /* z 122 7a */ BOOST_CC_ALPHA|BOOST_CC_LOWER,
168 /* { 123 7b */ BOOST_CC_PUNCT,
169 /* | 124 7c */ BOOST_CC_PUNCT,
170 /* } 125 7d */ BOOST_CC_PUNCT,
171 /* ~ 126 7e */ BOOST_CC_PUNCT,
172 /* DEL 127 7f */ BOOST_CC_CTRL,
173 /* -- 128 80 */ BOOST_CC_CTRL,
174 /* -- 129 81 */ BOOST_CC_CTRL,
175 /* -- 130 82 */ BOOST_CC_CTRL,
176 /* -- 131 83 */ BOOST_CC_CTRL,
177 /* -- 132 84 */ BOOST_CC_CTRL,
178 /* -- 133 85 */ BOOST_CC_CTRL,
179 /* -- 134 86 */ BOOST_CC_CTRL,
180 /* -- 135 87 */ BOOST_CC_CTRL,
181 /* -- 136 88 */ BOOST_CC_CTRL,
182 /* -- 137 89 */ BOOST_CC_CTRL,
183 /* -- 138 8a */ BOOST_CC_CTRL,
184 /* -- 139 8b */ BOOST_CC_CTRL,
185 /* -- 140 8c */ BOOST_CC_CTRL,
186 /* -- 141 8d */ BOOST_CC_CTRL,
187 /* -- 142 8e */ BOOST_CC_CTRL,
188 /* -- 143 8f */ BOOST_CC_CTRL,
189 /* -- 144 90 */ BOOST_CC_CTRL,
190 /* -- 145 91 */ BOOST_CC_CTRL,
191 /* -- 146 92 */ BOOST_CC_CTRL,
192 /* -- 147 93 */ BOOST_CC_CTRL,
193 /* -- 148 94 */ BOOST_CC_CTRL,
194 /* -- 149 95 */ BOOST_CC_CTRL,
195 /* -- 150 96 */ BOOST_CC_CTRL,
196 /* -- 151 97 */ BOOST_CC_CTRL,
197 /* -- 152 98 */ BOOST_CC_CTRL,
198 /* -- 153 99 */ BOOST_CC_CTRL,
199 /* -- 154 9a */ BOOST_CC_CTRL,
200 /* -- 155 9b */ BOOST_CC_CTRL,
201 /* -- 156 9c */ BOOST_CC_CTRL,
202 /* -- 157 9d */ BOOST_CC_CTRL,
203 /* -- 158 9e */ BOOST_CC_CTRL,
204 /* -- 159 9f */ BOOST_CC_CTRL,
205 /* 160 a0 */ BOOST_CC_SPACE,
206