summaryrefslogtreecommitdiffstats
path: root/vendor/github.com/denisenkom/go-mssqldb/cp1254.go
blob: a4b09bb44f54c2688e3e53c8fab407b68bbe7ca5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
package mssql

var cp1254 *charsetMap = &charsetMap{
	sb: [256]rune{
		0x0000, //NULL
		0x0001, //START OF HEADING
		0x0002, //START OF TEXT
		0x0003, //END OF TEXT
		0x0004, //END OF TRANSMISSION
		0x0005, //ENQUIRY
		0x0006, //ACKNOWLEDGE
		0x0007, //BELL
		0x0008, //BACKSPACE
		0x0009, //HORIZONTAL TABULATION
		0x000A, //LINE FEED
		0x000B, //VERTICAL TABULATION
		0x000C, //FORM FEED
		0x000D, //CARRIAGE RETURN
		0x000E, //SHIFT OUT
		0x000F, //SHIFT IN
		0x0010, //DATA LINK ESCAPE
		0x0011, //DEVICE CONTROL ONE
		0x0012, //DEVICE CONTROL TWO
		0x0013, //DEVICE CONTROL THREE
		0x0014, //DEVICE CONTROL FOUR
		0x0015, //NEGATIVE ACKNOWLEDGE
		0x0016, //SYNCHRONOUS IDLE
		0x0017, //END OF TRANSMISSION BLOCK
		0x0018, //CANCEL
		0x0019, //END OF MEDIUM
		0x001A, //SUBSTITUTE
		0x001B, //ESCAPE
		0x001C, //FILE SEPARATOR
		0x001D, //GROUP SEPARATOR
		0x001E, //RECORD SEPARATOR
		0x001F, //UNIT SEPARATOR
		0x0020, //SPACE
		0x0021, //EXCLAMATION MARK
		0x0022, //QUOTATION MARK
		0x0023, //NUMBER SIGN
		0x0024, //DOLLAR SIGN
		0x0025, //PERCENT SIGN
		0x0026, //AMPERSAND
		0x0027, //APOSTROPHE
		0x0028, //LEFT PARENTHESIS
		0x0029, //RIGHT PARENTHESIS
		0x002A, //ASTERISK
		0x002B, //PLUS SIGN
		0x002C, //COMMA
		0x002D, //HYPHEN-MINUS
		0x002E, //FULL STOP
		0x002F, //SOLIDUS
		0x0030, //DIGIT ZERO
		0x0031, //DIGIT ONE
		0x0032, //DIGIT TWO
		0x0033, //DIGIT THREE
		0x0034, //DIGIT FOUR
		0x0035, //DIGIT FIVE
		0x0036, //DIGIT SIX
		0x0037, //DIGIT SEVEN
		0x0038, //DIGIT EIGHT
		0x0039, //DIGIT NINE
		0x003A, //COLON
		0x003B, //SEMICOLON
		0x003C, //LESS-THAN SIGN
		0x003D, //EQUALS SIGN
		0x003E, //GREATER-THAN SIGN
		0x003F, //QUESTION MARK
		0x0040, //COMMERCIAL AT
		0x0041, //LATIN CAPITAL LETTER A
		0x0042, //LATIN CAPITAL LETTER B
		0x0043, //LATIN CAPITAL LETTER C
		0x0044, //LATIN CAPITAL LETTER D
		0x0045, //LATIN CAPITAL LETTER E
		0x0046, //LATIN CAPITAL LETTER F
		0x0047, //LATIN CAPITAL LETTER G
		0x0048, //LATIN CAPITAL LETTER H
		0x0049, //LATIN CAPITAL LETTER I
		0x004A, //LATIN CAPITAL LETTER J
		0x004B, //LATIN CAPITAL LETTER K
		0x004C, //LATIN CAPITAL LETTER L
		0x004D, //LATIN CAPITAL LETTER M
		0x004E, //LATIN CAPITAL LETTER N
		0x004F, //LATIN CAPITAL LETTER O
		0x0050, //LATIN CAPITAL LETTER P
		0x0051, //LATIN CAPITAL LETTER Q
		0x0052, //LATIN CAPITAL LETTER R
		0x0053, //LATIN CAPITAL LETTER S
		0x0054, //LATIN CAPITAL LETTER T
		0x0055, //LATIN CAPITAL LETTER U
		0x0056, //LATIN CAPITAL LETTER V
		0x0057, //LATIN CAPITAL LETTER W
		0x0058, //LATIN CAPITAL LETTER X
		0x0059, //LATIN CAPITAL LETTER Y
		0x005A, //LATIN CAPITAL LETTER Z
		0x005B, //LEFT SQUARE BRACKET
		0x005C, //REVERSE SOLIDUS
		0x005D, //RIGHT SQUARE BRACKET
		0x005E, //CIRCUMFLEX ACCENT
		0x005F, //LOW LINE
		0x0060, //GRAVE ACCENT
		0x0061, //LATIN SMALL LETTER A
		0x0062, //LATIN SMALL LETTER B
		0x0063, //LATIN SMALL LETTER C
		0x0064, //LATIN SMALL LETTER D
		0x0065, //LATIN SMALL LETTER E
		0x0066, //LATIN SMALL LETTER F
		0x0067, //LATIN SMALL LETTER G
		0x0068, //LATIN SMALL LETTER H
		0x0069, //LATIN SMALL LETTER I
		0x006A, //LATIN SMALL LETTER J
		0x006B, //LATIN SMALL LETTER K
		0x006C, //LATIN SMALL LETTER L
		0x006D, //LATIN SMALL LETTER M
		0x006E, //LATIN SMALL LETTER N
		0x006F, //LATIN SMALL LETTER O
		0x0070, //LATIN SMALL LETTER P
		0x0071, //LATIN SMALL LETTER Q
		0x0072, //LATIN SMALL LETTER R
		0x0073, //LATIN SMALL LETTER S
		0x0074, //LATIN SMALL LETTER T
		0x0075, //LATIN SMALL LETTER U
		0x0076, //LATIN SMALL LETTER V
		0x0077, //LATIN SMALL LETTER W
		0x0078, //LATIN SMALL LETTER X
		0x0079, //LATIN SMALL LETTER Y
		0x007A, //LATIN SMALL LETTER Z
		0x007B, //LEFT CURLY BRACKET
		0x007C, //VERTICAL LINE
		0x007D, //RIGHT CURLY BRACKET
		0x007E, //TILDE
		0x007F, //DELETE
		0x20AC, //EURO SIGN
		0xFFFD, //UNDEFINED
		0x201A, //SINGLE LOW-9 QUOTATION MARK
		0x0192, //LATIN SMALL LETTER F WITH HOOK
		0x201E, //DOUBLE LOW-9 QUOTATION MARK
		0x2026, //HORIZONTAL ELLIPSIS
		0x2020, //DAGGER
		0x2021, //DOUBLE DAGGER
		0x02C6, //MODIFIER LETTER CIRCUMFLEX ACCENT
		0x2030, //PER MILLE SIGN
		0x0160, //LATIN CAPITAL LETTER S WITH CARON
		0x2039, //SINGLE LEFT-POINTING ANGLE QUOTATION MARK
		0x0152, //LATIN CAPITAL LIGATURE OE
		0xFFFD, //UNDEFINED
		0xFFFD, //UNDEFINED
		0xFFFD, //UNDEFINED
		0xFFFD, //UNDEFINED
		0x2018, //LEFT SINGLE QUOTATION MARK
		0x2019, //RIGHT SINGLE QUOTATION MARK
		0x201C, //LEFT DOUBLE QUOTATION MARK
		0x201D, //RIGHT DOUBLE QUOTATION MARK
		0x2022, //BULLET
		0x2013, //EN DASH
		0x2014, //EM DASH
		0x02DC, //SMALL TILDE
		0x2122, //TRADE MARK SIGN
		0x0161, //LATIN SMALL LETTER S WITH CARON
		0x203A, //SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
		0x0153, //LATIN SMALL LIGATURE OE
		0xFFFD, //UNDEFINED
		0xFFFD, //UNDEFINED
		0x0178, //LATIN CAPITAL LETTER Y WITH DIAERESIS
		0x00A0, //NO-BREAK SPACE
		0x00A1, //INVERTED EXCLAMATION MARK
		0x00A2, //CENT SIGN
		0x00A3, //POUND SIGN
		0x00A4, //CURRENCY SIGN
		0x00A5, //YEN SIGN
		0x00A6, //BROKEN BAR
		0x00A7, //SECTION SIGN
		0x00A8, //DIAERESIS
		0x00A9, //COPYRIGHT SIGN
		0x00AA, //FEMININE ORDINAL INDICATOR
		0x00AB, //LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
		0x00AC, //NOT SIGN
		0x00AD, //SOFT HYPHEN
		0x00AE, //REGISTERED SIGN
		0x00AF, //MACRON
		0x00B0, //DEGREE SIGN
		0x00B1, //PLUS-MINUS SIGN
		0x00B2, //SUPERSCRIPT TWO
		0x00B3, //SUPERSCRIPT THREE
		0x00B4, //ACUTE ACCENT
		0x00B5, //MICRO SIGN
		0x00B6, //PILCROW SIGN
		0x00B7, //MIDDLE DOT
		0x00B8, //CEDILLA
		0x00B9, //SUPERSCRIPT ONE
		0x00BA, //MASCULINE ORDINAL INDICATOR
		0x00BB, //RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
		0x00BC, //VULGAR FRACTION ONE QUARTER
		0x00BD, //VULGAR FRACTION ONE HALF
		0x00BE, //VULGAR FRACTION THREE QUARTERS
		0x00BF, //INVERTED QUESTION MARK
		0x00C0, //LATIN CAPITAL LETTER A WITH GRAVE
		0x00C1, //LATIN CAPITAL LETTER A WITH ACUTE
		0x00C2, //LATIN CAPITAL LETTER A WITH CIRCUMFLEX
		0x00C3, //LATIN CAPITAL LETTER A WITH TILDE
		0x00C4, //LATIN CAPITAL LETTER A WITH DIAERESIS
		0x00C5, //LATIN CAPITAL LETTER A WITH RING ABOVE
		0x00C6, //LATIN CAPITAL LETTER AE
		0x00C7, //LATIN CAPITAL LETTER C WITH CEDILLA
		0x00C8, //LATIN CAPITAL LETTER E WITH GRAVE
		0x00C9, //LATIN CAPITAL LETTER E WITH ACUTE
		0x00CA, //LATIN CAPITAL LETTER E WITH CIRCUMFLEX
		0x00CB, //LATIN CAPITAL LETTER E WITH DIAERESIS
		0x00CC, //LATIN CAPITAL LETTER I WITH GRAVE
		0x00CD, //LATIN CAPITAL LETTER I WITH ACUTE
		0x00CE, //LATIN CAPITAL LETTER I WITH CIRCUMFLEX
		0x00CF, //LATIN CAPITAL LETTER I WITH DIAERESIS
		0x011E, //LATIN CAPITAL LETTER G WITH BREVE
		0x00D1, //LATIN CAPITAL LETTER N WITH TILDE
		0x00D2, //LATIN CAPITAL LETTER O WITH GRAVE
		0x00D3, //LATIN CAPITAL LETTER O WITH ACUTE
		0x00D4, //LATIN CAPITAL LETTER O WITH CIRCUMFLEX
		0x00D5, //LATIN CAPITAL LETTER O WITH TILDE
		0x00D6, //LATIN CAPITAL LETTER O WITH DIAERESIS
		0x00D7, //MULTIPLICATION SIGN
		0x00D8, //LATIN CAPITAL LETTER O WITH STROKE
		0x00D9, //LATIN CAPITAL LETTER U WITH GRAVE
		0x00DA, //LATIN CAPITAL LETTER U WITH ACUTE
		0x00DB, //LATIN CAPITAL LETTER U WITH CIRCUMFLEX
		0x00DC, //LATIN CAPITAL LETTER U WITH DIAERESIS
		0x0130, //LATIN CAPITAL LETTER I WITH DOT ABOVE
		0x015E, //LATIN CAPITAL LETTER S WITH CEDILLA
		0x00DF, //LATIN SMALL LETTER SHARP S
		0x00E0, //LATIN SMALL LETTER A WITH GRAVE
		0x00E1, //LATIN SMALL LETTER A WITH ACUTE
		0x00E2, //LATIN SMALL LETTER A WITH CIRCUMFLEX
		0x00E3, //LATIN SMALL LETTER A WITH TILDE
		0x00E4, //LATIN SMALL LETTER A WITH DIAERESIS
		0x00E5, //LATIN SMALL LETTER A WITH RING ABOVE
		0x00E6, //LATIN SMALL LETTER AE
		0x00E7, //LATIN SMALL LETTER C WITH CEDILLA
		0x00E8, //LATIN SMALL LETTER E WITH GRAVE
		0x00E9, //LATIN SMALL LETTER E WITH ACUTE
		0x00EA, //LATIN SMALL LETTER E WITH CIRCUMFLEX
		0x00EB, //LATIN SMALL LETTER E WITH DIAERESIS
		0x00EC, //LATIN SMALL LETTER I WITH GRAVE
		0x00ED, //LATIN SMALL LETTER I WITH ACUTE
		0x00EE, //LATIN SMALL LETTER I WITH CIRCUMFLEX
		0x00EF, //LATIN SMALL LETTER I WITH DIAERESIS
		0x011F, //LATIN SMALL LETTER G WITH BREVE
		0x00F1, //LATIN SMALL LETTER N WITH TILDE
		0x00F2, //LATIN SMALL LETTER O WITH GRAVE
		0x00F3, //LATIN SMALL LETTER O WITH ACUTE
		0x00F4, //LATIN SMALL LETTER O WITH CIRCUMFLEX
		0x00F5, //LATIN SMALL LETTER O WITH TILDE
		0x00F6, //LATIN SMALL LETTER O WITH DIAERESIS
		0x00F7, //DIVISION SIGN
		0x00F8, //LATIN SMALL LETTER O WITH STROKE
		0x00F9, //LATIN SMALL LETTER U WITH GRAVE
		0x00FA, //LATIN SMALL LETTER U WITH ACUTE
		0x00FB, //LATIN SMALL LETTER U WITH CIRCUMFLEX
		0x00FC, //LATIN SMALL LETTER U WITH DIAERESIS
		0x0131, //LATIN SMALL LETTER DOTLESS I
		0x015F, //LATIN SMALL LETTER S WITH CEDILLA
		0x00FF, //LATIN SMALL LETTER Y WITH DIAERESIS
	},
}