1 | /* |
2 | __ __ _ |
3 | ___\ \/ /_ __ __ _| |_ |
4 | / _ \\ /| '_ \ / _` | __| |
5 | | __// \| |_) | (_| | |_ |
6 | \___/_/\_\ .__/ \__,_|\__| |
7 | |_| XML parser |
8 | |
9 | Copyright (c) 1997-2000 Thai Open Source Software Center Ltd |
10 | Copyright (c) 2000 Clark Cooper <[email protected]> |
11 | Copyright (c) 2002 Fred L. Drake, Jr. <[email protected]> |
12 | Copyright (c) 2017 Sebastian Pipping <[email protected]> |
13 | Licensed under the MIT license: |
14 | |
15 | Permission is hereby granted, free of charge, to any person obtaining |
16 | a copy of this software and associated documentation files (the |
17 | "Software"), to deal in the Software without restriction, including |
18 | without limitation the rights to use, copy, modify, merge, publish, |
19 | distribute, sublicense, and/or sell copies of the Software, and to permit |
20 | persons to whom the Software is furnished to do so, subject to the |
21 | following conditions: |
22 | |
23 | The above copyright notice and this permission notice shall be included |
24 | in all copies or substantial portions of the Software. |
25 | |
26 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, |
27 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF |
28 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN |
29 | NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, |
30 | DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR |
31 | OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE |
32 | USE OR OTHER DEALINGS IN THE SOFTWARE. |
33 | */ |
34 | |
35 | /* 0x00 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML, |
36 | /* 0x04 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML, |
37 | /* 0x08 */ BT_NONXML, BT_S, BT_LF, BT_NONXML, |
38 | /* 0x0C */ BT_NONXML, BT_CR, BT_NONXML, BT_NONXML, |
39 | /* 0x10 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML, |
40 | /* 0x14 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML, |
41 | /* 0x18 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML, |
42 | /* 0x1C */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML, |
43 | /* 0x20 */ BT_S, BT_EXCL, BT_QUOT, BT_NUM, |
44 | /* 0x24 */ BT_OTHER, BT_PERCNT, BT_AMP, BT_APOS, |
45 | /* 0x28 */ BT_LPAR, BT_RPAR, BT_AST, BT_PLUS, |
46 | /* 0x2C */ BT_COMMA, BT_MINUS, BT_NAME, BT_SOL, |
47 | /* 0x30 */ BT_DIGIT, BT_DIGIT, BT_DIGIT, BT_DIGIT, |
48 | /* 0x34 */ BT_DIGIT, BT_DIGIT, BT_DIGIT, BT_DIGIT, |
49 | /* 0x38 */ BT_DIGIT, BT_DIGIT, BT_COLON, BT_SEMI, |
50 | /* 0x3C */ BT_LT, BT_EQUALS, BT_GT, BT_QUEST, |
51 | /* 0x40 */ BT_OTHER, BT_HEX, BT_HEX, BT_HEX, |
52 | /* 0x44 */ BT_HEX, BT_HEX, BT_HEX, BT_NMSTRT, |
53 | /* 0x48 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, |
54 | /* 0x4C */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, |
55 | /* 0x50 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, |
56 | /* 0x54 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, |
57 | /* 0x58 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_LSQB, |
58 | /* 0x5C */ BT_OTHER, BT_RSQB, BT_OTHER, BT_NMSTRT, |
59 | /* 0x60 */ BT_OTHER, BT_HEX, BT_HEX, BT_HEX, |
60 | /* 0x64 */ BT_HEX, BT_HEX, BT_HEX, BT_NMSTRT, |
61 | /* 0x68 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, |
62 | /* 0x6C */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, |
63 | /* 0x70 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, |
64 | /* 0x74 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, |
65 | /* 0x78 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_OTHER, |
66 | /* 0x7C */ BT_VERBAR, BT_OTHER, BT_OTHER, BT_OTHER, |
67 | |