Path: blob/main/contrib/llvm-project/clang/lib/Basic/CharInfo.cpp
35234 views
//===--- CharInfo.cpp - Static Data for Classifying ASCII Characters ------===//1//2// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.3// See https://llvm.org/LICENSE.txt for license information.4// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception5//6//===----------------------------------------------------------------------===//78#include "clang/Basic/CharInfo.h"910using namespace clang::charinfo;1112// Statically initialize CharInfo table based on ASCII character set13// Reference: FreeBSD 7.2 /usr/share/misc/ascii14const uint16_t clang::charinfo::InfoTable[256] = {15// 0 NUL 1 SOH 2 STX 3 ETX16// 4 EOT 5 ENQ 6 ACK 7 BEL170 , 0 , 0 , 0 ,180 , 0 , 0 , 0 ,19// 8 BS 9 HT 10 NL 11 VT20//12 NP 13 CR 14 SO 15 SI210 , CHAR_HORZ_WS, CHAR_VERT_WS, CHAR_HORZ_WS,22CHAR_HORZ_WS, CHAR_VERT_WS, 0 , 0 ,23//16 DLE 17 DC1 18 DC2 19 DC324//20 DC4 21 NAK 22 SYN 23 ETB250 , 0 , 0 , 0 ,260 , 0 , 0 , 0 ,27//24 CAN 25 EM 26 SUB 27 ESC28//28 FS 29 GS 30 RS 31 US290 , 0 , 0 , 0 ,300 , 0 , 0 , 0 ,31//32 SP 33 ! 34 " 35 #32//36 $ 37 % 38 & 39 '33CHAR_SPACE , CHAR_PUNCT , CHAR_PUNCT , CHAR_PUNCT ,34CHAR_PUNCT , CHAR_PUNCT , CHAR_PUNCT , CHAR_PUNCT ,35//40 ( 41 ) 42 * 43 +36//44 , 45 - 46 . 47 /37CHAR_PUNCT , CHAR_PUNCT , CHAR_PUNCT , CHAR_PUNCT ,38CHAR_PUNCT , CHAR_PUNCT , CHAR_PERIOD , CHAR_PUNCT ,39//48 0 49 1 50 2 51 340//52 4 53 5 54 6 55 741CHAR_DIGIT , CHAR_DIGIT , CHAR_DIGIT , CHAR_DIGIT ,42CHAR_DIGIT , CHAR_DIGIT , CHAR_DIGIT , CHAR_DIGIT ,43//56 8 57 9 58 : 59 ;44//60 < 61 = 62 > 63 ?45CHAR_DIGIT , CHAR_DIGIT , CHAR_PUNCT , CHAR_PUNCT ,46CHAR_PUNCT , CHAR_PUNCT , CHAR_PUNCT , CHAR_PUNCT ,47//64 @ 65 A 66 B 67 C48//68 D 69 E 70 F 71 G49CHAR_PUNCT , CHAR_XUPPER , CHAR_XUPPER , CHAR_XUPPER ,50CHAR_XUPPER , CHAR_XUPPER , CHAR_XUPPER , CHAR_UPPER ,51//72 H 73 I 74 J 75 K52//76 L 77 M 78 N 79 O53CHAR_UPPER , CHAR_UPPER , CHAR_UPPER , CHAR_UPPER ,54CHAR_UPPER , CHAR_UPPER , CHAR_UPPER , CHAR_UPPER ,55//80 P 81 Q 82 R 83 S56//84 T 85 U 86 V 87 W57CHAR_UPPER , CHAR_UPPER , CHAR_UPPER , CHAR_UPPER ,58CHAR_UPPER , CHAR_UPPER , CHAR_UPPER , CHAR_UPPER ,59//88 X 89 Y 90 Z 91 [60//92 \ 93 ] 94 ^ 95 _61CHAR_UPPER , CHAR_UPPER , CHAR_UPPER , CHAR_PUNCT ,62CHAR_PUNCT , CHAR_PUNCT , CHAR_PUNCT , CHAR_UNDER ,63//96 ` 97 a 98 b 99 c64//100 d 101 e 102 f 103 g65CHAR_PUNCT , CHAR_XLOWER , CHAR_XLOWER , CHAR_XLOWER ,66CHAR_XLOWER , CHAR_XLOWER , CHAR_XLOWER , CHAR_LOWER ,67//104 h 105 i 106 j 107 k68//108 l 109 m 110 n 111 o69CHAR_LOWER , CHAR_LOWER , CHAR_LOWER , CHAR_LOWER ,70CHAR_LOWER , CHAR_LOWER , CHAR_LOWER , CHAR_LOWER ,71//112 p 113 q 114 r 115 s72//116 t 117 u 118 v 119 w73CHAR_LOWER , CHAR_LOWER , CHAR_LOWER , CHAR_LOWER ,74CHAR_LOWER , CHAR_LOWER , CHAR_LOWER , CHAR_LOWER ,75//120 x 121 y 122 z 123 {76//124 | 125 } 126 ~ 127 DEL77CHAR_LOWER , CHAR_LOWER , CHAR_LOWER , CHAR_PUNCT ,78CHAR_PUNCT , CHAR_PUNCT , CHAR_PUNCT , 079};808182