mail-parser 1.0.0

Fast and robust e-mail parsing library for Rust
Documentation
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
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
/*
 * SPDX-FileCopyrightText: 2020 Stalwart Labs LLC <hello@stalw.art>
 *
 * SPDX-License-Identifier: Apache-2.0 OR MIT
 */

use super::Charset;

pub(super) fn lookup(label: &[u8]) -> Option<Charset> {
    hashify::map_ignore_case!(label, Charset,
        "850" => Charset::Ibm850,
        "866" => Charset::Ibm866,
        "ansi-x3.4-1968" => Charset::Windows1252,
        "ansi-x3.4_1968" => Charset::Windows1252,
        "ansi_x3.4-1968" => Charset::Windows1252,
        "ansi_x3.4_1968" => Charset::Windows1252,
        "arabic" => Charset::Iso8859_6,
        "ascii" => Charset::Windows1252,
        "asmo-708" => Charset::Iso8859_6,
        "asmo_708" => Charset::Iso8859_6,
        "big5" => Charset::Big5,
        "big5-hkscs" => Charset::Big5,
        "big5_hkscs" => Charset::Big5,
        "chinese" => Charset::Gbk,
        "cn-big5" => Charset::Big5,
        "cn_big5" => Charset::Big5,
        "cp1250" => Charset::Windows1250,
        "cp1251" => Charset::Windows1251,
        "cp1252" => Charset::Windows1252,
        "cp1253" => Charset::Windows1253,
        "cp1254" => Charset::Windows1254,
        "cp1255" => Charset::Windows1255,
        "cp1256" => Charset::Windows1256,
        "cp1257" => Charset::Windows1257,
        "cp1258" => Charset::Windows1258,
        "cp819" => Charset::Windows1252,
        "cp850" => Charset::Ibm850,
        "cp866" => Charset::Ibm866,
        "cp936" => Charset::Gbk,
        "cp949" => Charset::EucKr,
        "csbig5" => Charset::Big5,
        "cseuckr" => Charset::EucKr,
        "cseucpkdfmtjapanese" => Charset::EucJp,
        "csgb18030" => Charset::Gb18030,
        "csgb2312" => Charset::Gbk,
        "csgbk" => Charset::Gbk,
        "csibm866" => Charset::Ibm866,
        "csiso2022jp" => Charset::Iso2022Jp,
        "csiso2022kr" => Charset::Replacement,
        "csiso58gb231280" => Charset::Gbk,
        "csiso885913" => Charset::Iso8859_13,
        "csiso885914" => Charset::Iso8859_14,
        "csiso885915" => Charset::Iso8859_15,
        "csiso885916" => Charset::Iso8859_16,
        "csiso88596e" => Charset::Iso8859_6,
        "csiso88596i" => Charset::Iso8859_6,
        "csiso88598e" => Charset::Iso8859_8,
        "csiso88598i" => Charset::Iso8859_8,
        "csisolatin1" => Charset::Windows1252,
        "csisolatin2" => Charset::Iso8859_2,
        "csisolatin3" => Charset::Iso8859_3,
        "csisolatin4" => Charset::Iso8859_4,
        "csisolatin5" => Charset::Windows1254,
        "csisolatin6" => Charset::Iso8859_10,
        "csisolatin9" => Charset::Iso8859_15,
        "csisolatinarabic" => Charset::Iso8859_6,
        "csisolatincyrillic" => Charset::Iso8859_5,
        "csisolatingreek" => Charset::Iso8859_7,
        "csisolatinhebrew" => Charset::Iso8859_8,
        "cskoi8r" => Charset::Koi8R,
        "cskoi8u" => Charset::Koi8U,
        "csksc56011987" => Charset::EucKr,
        "csmacintosh" => Charset::Macintosh,
        "cspc850multilingual" => Charset::Ibm850,
        "csshiftjis" => Charset::ShiftJis,
        "cstis620" => Charset::Windows874,
        "csunicode" => Charset::Utf16,
        "csutf16" => Charset::Utf16,
        "csutf16be" => Charset::Utf16Be,
        "csutf16le" => Charset::Utf16Le,
        "csutf7" => Charset::Utf7,
        "cswindows1250" => Charset::Windows1250,
        "cswindows1251" => Charset::Windows1251,
        "cswindows1252" => Charset::Windows1252,
        "cswindows1253" => Charset::Windows1253,
        "cswindows1254" => Charset::Windows1254,
        "cswindows1255" => Charset::Windows1255,
        "cswindows1256" => Charset::Windows1256,
        "cswindows1257" => Charset::Windows1257,
        "cswindows1258" => Charset::Windows1258,
        "cswindows874" => Charset::Windows874,
        "cyrillic" => Charset::Iso8859_5,
        "dos-874" => Charset::Windows874,
        "dos_874" => Charset::Windows874,
        "ecma-114" => Charset::Iso8859_6,
        "ecma-118" => Charset::Iso8859_7,
        "ecma_114" => Charset::Iso8859_6,
        "ecma_118" => Charset::Iso8859_7,
        "elot-928" => Charset::Iso8859_7,
        "elot_928" => Charset::Iso8859_7,
        "euc-jp" => Charset::EucJp,
        "euc-kr" => Charset::EucKr,
        "euc_jp" => Charset::EucJp,
        "euc_kr" => Charset::EucKr,
        "extended-unix-code-packed-format-for-japanese" => Charset::EucJp,
        "extended-unix-code-packed-format-for_japanese" => Charset::EucJp,
        "extended-unix-code-packed-format_for-japanese" => Charset::EucJp,
        "extended-unix-code-packed-format_for_japanese" => Charset::EucJp,
        "extended-unix-code-packed_format-for-japanese" => Charset::EucJp,
        "extended-unix-code-packed_format-for_japanese" => Charset::EucJp,
        "extended-unix-code-packed_format_for-japanese" => Charset::EucJp,
        "extended-unix-code-packed_format_for_japanese" => Charset::EucJp,
        "extended-unix-code_packed-format-for-japanese" => Charset::EucJp,
        "extended-unix-code_packed-format-for_japanese" => Charset::EucJp,
        "extended-unix-code_packed-format_for-japanese" => Charset::EucJp,
        "extended-unix-code_packed-format_for_japanese" => Charset::EucJp,
        "extended-unix-code_packed_format-for-japanese" => Charset::EucJp,
        "extended-unix-code_packed_format-for_japanese" => Charset::EucJp,
        "extended-unix-code_packed_format_for-japanese" => Charset::EucJp,
        "extended-unix-code_packed_format_for_japanese" => Charset::EucJp,
        "extended-unix_code-packed-format-for-japanese" => Charset::EucJp,
        "extended-unix_code-packed-format-for_japanese" => Charset::EucJp,
        "extended-unix_code-packed-format_for-japanese" => Charset::EucJp,
        "extended-unix_code-packed-format_for_japanese" => Charset::EucJp,
        "extended-unix_code-packed_format-for-japanese" => Charset::EucJp,
        "extended-unix_code-packed_format-for_japanese" => Charset::EucJp,
        "extended-unix_code-packed_format_for-japanese" => Charset::EucJp,
        "extended-unix_code-packed_format_for_japanese" => Charset::EucJp,
        "extended-unix_code_packed-format-for-japanese" => Charset::EucJp,
        "extended-unix_code_packed-format-for_japanese" => Charset::EucJp,
        "extended-unix_code_packed-format_for-japanese" => Charset::EucJp,
        "extended-unix_code_packed-format_for_japanese" => Charset::EucJp,
        "extended-unix_code_packed_format-for-japanese" => Charset::EucJp,
        "extended-unix_code_packed_format-for_japanese" => Charset::EucJp,
        "extended-unix_code_packed_format_for-japanese" => Charset::EucJp,
        "extended-unix_code_packed_format_for_japanese" => Charset::EucJp,
        "extended_unix-code-packed-format-for-japanese" => Charset::EucJp,
        "extended_unix-code-packed-format-for_japanese" => Charset::EucJp,
        "extended_unix-code-packed-format_for-japanese" => Charset::EucJp,
        "extended_unix-code-packed-format_for_japanese" => Charset::EucJp,
        "extended_unix-code-packed_format-for-japanese" => Charset::EucJp,
        "extended_unix-code-packed_format-for_japanese" => Charset::EucJp,
        "extended_unix-code-packed_format_for-japanese" => Charset::EucJp,
        "extended_unix-code-packed_format_for_japanese" => Charset::EucJp,
        "extended_unix-code_packed-format-for-japanese" => Charset::EucJp,
        "extended_unix-code_packed-format-for_japanese" => Charset::EucJp,
        "extended_unix-code_packed-format_for-japanese" => Charset::EucJp,
        "extended_unix-code_packed-format_for_japanese" => Charset::EucJp,
        "extended_unix-code_packed_format-for-japanese" => Charset::EucJp,
        "extended_unix-code_packed_format-for_japanese" => Charset::EucJp,
        "extended_unix-code_packed_format_for-japanese" => Charset::EucJp,
        "extended_unix-code_packed_format_for_japanese" => Charset::EucJp,
        "extended_unix_code-packed-format-for-japanese" => Charset::EucJp,
        "extended_unix_code-packed-format-for_japanese" => Charset::EucJp,
        "extended_unix_code-packed-format_for-japanese" => Charset::EucJp,
        "extended_unix_code-packed-format_for_japanese" => Charset::EucJp,
        "extended_unix_code-packed_format-for-japanese" => Charset::EucJp,
        "extended_unix_code-packed_format-for_japanese" => Charset::EucJp,
        "extended_unix_code-packed_format_for-japanese" => Charset::EucJp,
        "extended_unix_code-packed_format_for_japanese" => Charset::EucJp,
        "extended_unix_code_packed-format-for-japanese" => Charset::EucJp,
        "extended_unix_code_packed-format-for_japanese" => Charset::EucJp,
        "extended_unix_code_packed-format_for-japanese" => Charset::EucJp,
        "extended_unix_code_packed-format_for_japanese" => Charset::EucJp,
        "extended_unix_code_packed_format-for-japanese" => Charset::EucJp,
        "extended_unix_code_packed_format-for_japanese" => Charset::EucJp,
        "extended_unix_code_packed_format_for-japanese" => Charset::EucJp,
        "extended_unix_code_packed_format_for_japanese" => Charset::EucJp,
        "gb-2312" => Charset::Gbk,
        "gb-2312-80" => Charset::Gbk,
        "gb-2312_80" => Charset::Gbk,
        "gb18030" => Charset::Gb18030,
        "gb2312" => Charset::Gb18030,
        "gb_2312" => Charset::Gbk,
        "gb_2312-80" => Charset::Gbk,
        "gb_2312_80" => Charset::Gbk,
        "gbk" => Charset::Gbk,
        "greek" => Charset::Iso8859_7,
        "greek8" => Charset::Iso8859_7,
        "hebrew" => Charset::Iso8859_8,
        "hz-gb-2312" => Charset::Replacement,
        "hz-gb_2312" => Charset::Replacement,
        "hz_gb-2312" => Charset::Replacement,
        "hz_gb_2312" => Charset::Replacement,
        "ibm819" => Charset::Windows1252,
        "ibm850" => Charset::Ibm850,
        "ibm866" => Charset::Ibm866,
        "iso-10646-ucs-2" => Charset::Utf16,
        "iso-10646-ucs_2" => Charset::Utf16,
        "iso-10646_ucs-2" => Charset::Utf16,
        "iso-10646_ucs_2" => Charset::Utf16,
        "iso-2022-cn" => Charset::Replacement,
        "iso-2022-cn-ext" => Charset::Replacement,
        "iso-2022-cn_ext" => Charset::Replacement,
        "iso-2022-jp" => Charset::Iso2022Jp,
        "iso-2022-kr" => Charset::Replacement,
        "iso-2022_cn" => Charset::Replacement,
        "iso-2022_cn-ext" => Charset::Replacement,
        "iso-2022_cn_ext" => Charset::Replacement,
        "iso-2022_jp" => Charset::Iso2022Jp,
        "iso-2022_kr" => Charset::Replacement,
        "iso-8859-1" => Charset::Windows1252,
        "iso-8859-10" => Charset::Iso8859_10,
        "iso-8859-10:1992" => Charset::Iso8859_10,
        "iso-8859-11" => Charset::Windows874,
        "iso-8859-13" => Charset::Iso8859_13,
        "iso-8859-14" => Charset::Iso8859_14,
        "iso-8859-14:1998" => Charset::Iso8859_14,
        "iso-8859-15" => Charset::Iso8859_15,
        "iso-8859-16" => Charset::Iso8859_16,
        "iso-8859-16:2001" => Charset::Iso8859_16,
        "iso-8859-1:1987" => Charset::Windows1252,
        "iso-8859-2" => Charset::Iso8859_2,
        "iso-8859-2:1987" => Charset::Iso8859_2,
        "iso-8859-3" => Charset::Iso8859_3,
        "iso-8859-3:1988" => Charset::Iso8859_3,
        "iso-8859-4" => Charset::Iso8859_4,
        "iso-8859-4:1988" => Charset::Iso8859_4,
        "iso-8859-5" => Charset::Iso8859_5,
        "iso-8859-5:1988" => Charset::Iso8859_5,
        "iso-8859-6" => Charset::Iso8859_6,
        "iso-8859-6-e" => Charset::Iso8859_6,
        "iso-8859-6-i" => Charset::Iso8859_6,
        "iso-8859-6:1987" => Charset::Iso8859_6,
        "iso-8859-6_e" => Charset::Iso8859_6,
        "iso-8859-6_i" => Charset::Iso8859_6,
        "iso-8859-7" => Charset::Iso8859_7,
        "iso-8859-7:1987" => Charset::Iso8859_7,
        "iso-8859-8" => Charset::Iso8859_8,
        "iso-8859-8-e" => Charset::Iso8859_8,
        "iso-8859-8-i" => Charset::Iso8859_8,
        "iso-8859-8:1988" => Charset::Iso8859_8,
        "iso-8859-8_e" => Charset::Iso8859_8,
        "iso-8859-8_i" => Charset::Iso8859_8,
        "iso-8859-9" => Charset::Windows1254,
        "iso-8859-9:1989" => Charset::Windows1254,
        "iso-8859_1" => Charset::Windows1252,
        "iso-8859_10" => Charset::Iso8859_10,
        "iso-8859_10:1992" => Charset::Iso8859_10,
        "iso-8859_11" => Charset::Windows874,
        "iso-8859_13" => Charset::Iso8859_13,
        "iso-8859_14" => Charset::Iso8859_14,
        "iso-8859_14:1998" => Charset::Iso8859_14,
        "iso-8859_15" => Charset::Iso8859_15,
        "iso-8859_16" => Charset::Iso8859_16,
        "iso-8859_16:2001" => Charset::Iso8859_16,
        "iso-8859_1:1987" => Charset::Windows1252,
        "iso-8859_2" => Charset::Iso8859_2,
        "iso-8859_2:1987" => Charset::Iso8859_2,
        "iso-8859_3" => Charset::Iso8859_3,
        "iso-8859_3:1988" => Charset::Iso8859_3,
        "iso-8859_4" => Charset::Iso8859_4,
        "iso-8859_4:1988" => Charset::Iso8859_4,
        "iso-8859_5" => Charset::Iso8859_5,
        "iso-8859_5:1988" => Charset::Iso8859_5,
        "iso-8859_6" => Charset::Iso8859_6,
        "iso-8859_6-e" => Charset::Iso8859_6,
        "iso-8859_6-i" => Charset::Iso8859_6,
        "iso-8859_6:1987" => Charset::Iso8859_6,
        "iso-8859_6_e" => Charset::Iso8859_6,
        "iso-8859_6_i" => Charset::Iso8859_6,
        "iso-8859_7" => Charset::Iso8859_7,
        "iso-8859_7:1987" => Charset::Iso8859_7,
        "iso-8859_8" => Charset::Iso8859_8,
        "iso-8859_8-e" => Charset::Iso8859_8,
        "iso-8859_8-i" => Charset::Iso8859_8,
        "iso-8859_8:1988" => Charset::Iso8859_8,
        "iso-8859_8_e" => Charset::Iso8859_8,
        "iso-8859_8_i" => Charset::Iso8859_8,
        "iso-8859_9" => Charset::Windows1254,
        "iso-8859_9:1989" => Charset::Windows1254,
        "iso-celtic" => Charset::Iso8859_14,
        "iso-ir-100" => Charset::Windows1252,
        "iso-ir-101" => Charset::Iso8859_2,
        "iso-ir-109" => Charset::Iso8859_3,
        "iso-ir-110" => Charset::Iso8859_4,
        "iso-ir-126" => Charset::Iso8859_7,
        "iso-ir-127" => Charset::Iso8859_6,
        "iso-ir-138" => Charset::Iso8859_8,
        "iso-ir-144" => Charset::Iso8859_5,
        "iso-ir-148" => Charset::Windows1254,
        "iso-ir-149" => Charset::EucKr,
        "iso-ir-157" => Charset::Iso8859_10,
        "iso-ir-199" => Charset::Iso8859_14,
        "iso-ir-226" => Charset::Iso8859_16,
        "iso-ir-58" => Charset::Gbk,
        "iso-ir_100" => Charset::Windows1252,
        "iso-ir_101" => Charset::Iso8859_2,
        "iso-ir_109" => Charset::Iso8859_3,
        "iso-ir_110" => Charset::Iso8859_4,
        "iso-ir_126" => Charset::Iso8859_7,
        "iso-ir_127" => Charset::Iso8859_6,
        "iso-ir_138" => Charset::Iso8859_8,
        "iso-ir_144" => Charset::Iso8859_5,
        "iso-ir_148" => Charset::Windows1254,
        "iso-ir_149" => Charset::EucKr,
        "iso-ir_157" => Charset::Iso8859_10,
        "iso-ir_199" => Charset::Iso8859_14,
        "iso-ir_226" => Charset::Iso8859_16,
        "iso-ir_58" => Charset::Gbk,
        "iso8859-1" => Charset::Windows1252,
        "iso8859-10" => Charset::Iso8859_10,
        "iso8859-11" => Charset::Windows874,
        "iso8859-13" => Charset::Iso8859_13,
        "iso8859-14" => Charset::Iso8859_14,
        "iso8859-15" => Charset::Iso8859_15,
        "iso8859-2" => Charset::Iso8859_2,
        "iso8859-3" => Charset::Iso8859_3,
        "iso8859-4" => Charset::Iso8859_4,
        "iso8859-5" => Charset::Iso8859_5,
        "iso8859-6" => Charset::Iso8859_6,
        "iso8859-7" => Charset::Iso8859_7,
        "iso8859-8" => Charset::Iso8859_8,
        "iso8859-9" => Charset::Windows1254,
        "iso88591" => Charset::Windows1252,
        "iso885910" => Charset::Iso8859_10,
        "iso885911" => Charset::Windows874,
        "iso885913" => Charset::Iso8859_13,
        "iso885914" => Charset::Iso8859_14,
        "iso885915" => Charset::Iso8859_15,
        "iso88592" => Charset::Iso8859_2,
        "iso88593" => Charset::Iso8859_3,
        "iso88594" => Charset::Iso8859_4,
        "iso88595" => Charset::Iso8859_5,
        "iso88596" => Charset::Iso8859_6,
        "iso88597" => Charset::Iso8859_7,
        "iso88598" => Charset::Iso8859_8,
        "iso88599" => Charset::Windows1254,
        "iso8859_1" => Charset::Windows1252,
        "iso8859_10" => Charset::Iso8859_10,
        "iso8859_11" => Charset::Windows874,
        "iso8859_13" => Charset::Iso8859_13,
        "iso8859_14" => Charset::Iso8859_14,
        "iso8859_15" => Charset::Iso8859_15,
        "iso8859_2" => Charset::Iso8859_2,
        "iso8859_3" => Charset::Iso8859_3,
        "iso8859_4" => Charset::Iso8859_4,
        "iso8859_5" => Charset::Iso8859_5,
        "iso8859_6" => Charset::Iso8859_6,
        "iso8859_7" => Charset::Iso8859_7,
        "iso8859_8" => Charset::Iso8859_8,
        "iso8859_9" => Charset::Windows1254,
        "iso_10646-ucs-2" => Charset::Utf16,
        "iso_10646-ucs_2" => Charset::Utf16,
        "iso_10646_ucs-2" => Charset::Utf16,
        "iso_10646_ucs_2" => Charset::Utf16,
        "iso_2022-cn" => Charset::Replacement,
        "iso_2022-cn-ext" => Charset::Replacement,
        "iso_2022-cn_ext" => Charset::Replacement,
        "iso_2022-jp" => Charset::Iso2022Jp,
        "iso_2022-kr" => Charset::Replacement,
        "iso_2022_cn" => Charset::Replacement,
        "iso_2022_cn-ext" => Charset::Replacement,
        "iso_2022_cn_ext" => Charset::Replacement,
        "iso_2022_jp" => Charset::Iso2022Jp,
        "iso_2022_kr" => Charset::Replacement,
        "iso_8859-1" => Charset::Windows1252,
        "iso_8859-10" => Charset::Iso8859_10,
        "iso_8859-10:1992" => Charset::Iso8859_10,
        "iso_8859-11" => Charset::Windows874,
        "iso_8859-13" => Charset::Iso8859_13,
        "iso_8859-14" => Charset::Iso8859_14,
        "iso_8859-14:1998" => Charset::Iso8859_14,
        "iso_8859-15" => Charset::Iso8859_15,
        "iso_8859-16" => Charset::Iso8859_16,
        "iso_8859-16:2001" => Charset::Iso8859_16,
        "iso_8859-1:1987" => Charset::Windows1252,
        "iso_8859-2" => Charset::Iso8859_2,
        "iso_8859-2:1987" => Charset::Iso8859_2,
        "iso_8859-3" => Charset::Iso8859_3,
        "iso_8859-3:1988" => Charset::Iso8859_3,
        "iso_8859-4" => Charset::Iso8859_4,
        "iso_8859-4:1988" => Charset::Iso8859_4,
        "iso_8859-5" => Charset::Iso8859_5,
        "iso_8859-5:1988" => Charset::Iso8859_5,
        "iso_8859-6" => Charset::Iso8859_6,
        "iso_8859-6-e" => Charset::Iso8859_6,
        "iso_8859-6-i" => Charset::Iso8859_6,
        "iso_8859-6:1987" => Charset::Iso8859_6,
        "iso_8859-6_e" => Charset::Iso8859_6,
        "iso_8859-6_i" => Charset::Iso8859_6,
        "iso_8859-7" => Charset::Iso8859_7,
        "iso_8859-7:1987" => Charset::Iso8859_7,
        "iso_8859-8" => Charset::Iso8859_8,
        "iso_8859-8-e" => Charset::Iso8859_8,
        "iso_8859-8-i" => Charset::Iso8859_8,
        "iso_8859-8:1988" => Charset::Iso8859_8,
        "iso_8859-8_e" => Charset::Iso8859_8,
        "iso_8859-8_i" => Charset::Iso8859_8,
        "iso_8859-9" => Charset::Windows1254,
        "iso_8859-9:1989" => Charset::Windows1254,
        "iso_8859_1" => Charset::Windows1252,
        "iso_8859_10" => Charset::Iso8859_10,
        "iso_8859_10:1992" => Charset::Iso8859_10,
        "iso_8859_11" => Charset::Windows874,
        "iso_8859_13" => Charset::Iso8859_13,
        "iso_8859_14" => Charset::Iso8859_14,
        "iso_8859_14:1998" => Charset::Iso8859_14,
        "iso_8859_15" => Charset::Iso8859_15,
        "iso_8859_16" => Charset::Iso8859_16,
        "iso_8859_16:2001" => Charset::Iso8859_16,
        "iso_8859_1:1987" => Charset::Windows1252,
        "iso_8859_2" => Charset::Iso8859_2,
        "iso_8859_2:1987" => Charset::Iso8859_2,
        "iso_8859_3" => Charset::Iso8859_3,
        "iso_8859_3:1988" => Charset::Iso8859_3,
        "iso_8859_4" => Charset::Iso8859_4,
        "iso_8859_4:1988" => Charset::Iso8859_4,
        "iso_8859_5" => Charset::Iso8859_5,
        "iso_8859_5:1988" => Charset::Iso8859_5,
        "iso_8859_6" => Charset::Iso8859_6,
        "iso_8859_6-e" => Charset::Iso8859_6,
        "iso_8859_6-i" => Charset::Iso8859_6,
        "iso_8859_6:1987" => Charset::Iso8859_6,
        "iso_8859_6_e" => Charset::Iso8859_6,
        "iso_8859_6_i" => Charset::Iso8859_6,
        "iso_8859_7" => Charset::Iso8859_7,
        "iso_8859_7:1987" => Charset::Iso8859_7,
        "iso_8859_8" => Charset::Iso8859_8,
        "iso_8859_8-e" => Charset::Iso8859_8,
        "iso_8859_8-i" => Charset::Iso8859_8,
        "iso_8859_8:1988" => Charset::Iso8859_8,
        "iso_8859_8_e" => Charset::Iso8859_8,
        "iso_8859_8_i" => Charset::Iso8859_8,
        "iso_8859_9" => Charset::Windows1254,
        "iso_8859_9:1989" => Charset::Windows1254,
        "iso_celtic" => Charset::Iso8859_14,
        "iso_ir-100" => Charset::Windows1252,
        "iso_ir-101" => Charset::Iso8859_2,
        "iso_ir-109" => Charset::Iso8859_3,
        "iso_ir-110" => Charset::Iso8859_4,
        "iso_ir-126" => Charset::Iso8859_7,
        "iso_ir-127" => Charset::Iso8859_6,
        "iso_ir-138" => Charset::Iso8859_8,
        "iso_ir-144" => Charset::Iso8859_5,
        "iso_ir-148" => Charset::Windows1254,
        "iso_ir-149" => Charset::EucKr,
        "iso_ir-157" => Charset::Iso8859_10,
        "iso_ir-199" => Charset::Iso8859_14,
        "iso_ir-226" => Charset::Iso8859_16,
        "iso_ir-58" => Charset::Gbk,
        "iso_ir_100" => Charset::Windows1252,
        "iso_ir_101" => Charset::Iso8859_2,
        "iso_ir_109" => Charset::Iso8859_3,
        "iso_ir_110" => Charset::Iso8859_4,
        "iso_ir_126" => Charset::Iso8859_7,
        "iso_ir_127" => Charset::Iso8859_6,
        "iso_ir_138" => Charset::Iso8859_8,
        "iso_ir_144" => Charset::Iso8859_5,
        "iso_ir_148" => Charset::Windows1254,
        "iso_ir_149" => Charset::EucKr,
        "iso_ir_157" => Charset::Iso8859_10,
        "iso_ir_199" => Charset::Iso8859_14,
        "iso_ir_226" => Charset::Iso8859_16,
        "iso_ir_58" => Charset::Gbk,
        "koi" => Charset::Koi8R,
        "koi8" => Charset::Koi8R,
        "koi8-r" => Charset::Koi8R,
        "koi8-ru" => Charset::Koi8U,
        "koi8-u" => Charset::Koi8U,
        "koi8_r" => Charset::Koi8R,
        "koi8_ru" => Charset::Koi8U,
        "koi8_u" => Charset::Koi8U,
        "korean" => Charset::EucKr,
        "ks-c-5601-1987" => Charset::EucKr,
        "ks-c-5601-1989" => Charset::EucKr,
        "ks-c-5601_1987" => Charset::EucKr,
        "ks-c-5601_1989" => Charset::EucKr,
        "ks-c_5601-1987" => Charset::EucKr,
        "ks-c_5601-1989" => Charset::EucKr,
        "ks-c_5601_1987" => Charset::EucKr,
        "ks-c_5601_1989" => Charset::EucKr,
        "ks_c-5601-1987" => Charset::EucKr,
        "ks_c-5601-1989" => Charset::EucKr,
        "ks_c-5601_1987" => Charset::EucKr,
        "ks_c-5601_1989" => Charset::EucKr,
        "ks_c_5601-1987" => Charset::EucKr,
        "ks_c_5601-1989" => Charset::EucKr,
        "ks_c_5601_1987" => Charset::EucKr,
        "ks_c_5601_1989" => Charset::EucKr,
        "ksc-5601" => Charset::EucKr,
        "ksc5601" => Charset::EucKr,
        "ksc_5601" => Charset::EucKr,
        "l1" => Charset::Windows1252,
        "l10" => Charset::Iso8859_16,
        "l2" => Charset::Iso8859_2,
        "l3" => Charset::Iso8859_3,
        "l4" => Charset::Iso8859_4,
        "l5" => Charset::Windows1254,
        "l6" => Charset::Iso8859_10,
        "l8" => Charset::Iso8859_14,
        "l9" => Charset::Iso8859_15,
        "latin-9" => Charset::Iso8859_15,
        "latin1" => Charset::Windows1252,
        "latin10" => Charset::Iso8859_16,
        "latin2" => Charset::Iso8859_2,
        "latin3" => Charset::Iso8859_3,
        "latin4" => Charset::Iso8859_4,
        "latin5" => Charset::Windows1254,
        "latin6" => Charset::Iso8859_10,
        "latin8" => Charset::Iso8859_14,
        "latin_9" => Charset::Iso8859_15,
        "logical" => Charset::Iso8859_8,
        "mac" => Charset::Macintosh,
        "macintosh" => Charset::Macintosh,
        "ms-kanji" => Charset::ShiftJis,
        "ms932" => Charset::ShiftJis,
        "ms936" => Charset::Gbk,
        "ms_kanji" => Charset::ShiftJis,
        "replacement" => Charset::Replacement,
        "shift-jis" => Charset::ShiftJis,
        "shift_jis" => Charset::ShiftJis,
        "sjis" => Charset::ShiftJis,
        "sun-eu-greek" => Charset::Iso8859_7,
        "sun-eu_greek" => Charset::Iso8859_7,
        "sun_eu-greek" => Charset::Iso8859_7,
        "sun_eu_greek" => Charset::Iso8859_7,
        "tis-620" => Charset::Windows874,
        "tis_620" => Charset::Windows874,
        "ucs-2" => Charset::Utf16,
        "ucs_2" => Charset::Utf16,
        "uhc" => Charset::EucKr,
        "unicode" => Charset::Utf16,
        "unicode-1-1-utf-8" => Charset::Utf8,
        "unicode-1-1-utf_8" => Charset::Utf8,
        "unicode-1-1_utf-8" => Charset::Utf8,
        "unicode-1-1_utf_8" => Charset::Utf8,
        "unicode-1_1-utf-8" => Charset::Utf8,
        "unicode-1_1-utf_8" => Charset::Utf8,
        "unicode-1_1_utf-8" => Charset::Utf8,
        "unicode-1_1_utf_8" => Charset::Utf8,
        "unicode11utf8" => Charset::Utf8,
        "unicode20utf8" => Charset::Utf8,
        "unicode_1-1-utf-8" => Charset::Utf8,
        "unicode_1-1-utf_8" => Charset::Utf8,
        "unicode_1-1_utf-8" => Charset::Utf8,
        "unicode_1-1_utf_8" => Charset::Utf8,
        "unicode_1_1-utf-8" => Charset::Utf8,
        "unicode_1_1-utf_8" => Charset::Utf8,
        "unicode_1_1_utf-8" => Charset::Utf8,
        "unicode_1_1_utf_8" => Charset::Utf8,
        "unicodefeff" => Charset::Utf16,
        "unicodefffe" => Charset::Utf16Be,
        "us-ascii" => Charset::Windows1252,
        "us_ascii" => Charset::Windows1252,
        "utf-16" => Charset::Utf16,
        "utf-16be" => Charset::Utf16Be,
        "utf-16le" => Charset::Utf16Le,
        "utf-7" => Charset::Utf7,
        "utf-8" => Charset::Utf8,
        "utf8" => Charset::Utf8,
        "utf_16" => Charset::Utf16,
        "utf_16be" => Charset::Utf16Be,
        "utf_16le" => Charset::Utf16Le,
        "utf_7" => Charset::Utf7,
        "utf_8" => Charset::Utf8,
        "visual" => Charset::Iso8859_8,
        "windows-1250" => Charset::Windows1250,
        "windows-1251" => Charset::Windows1251,
        "windows-1252" => Charset::Windows1252,
        "windows-1253" => Charset::Windows1253,
        "windows-1254" => Charset::Windows1254,
        "windows-1255" => Charset::Windows1255,
        "windows-1256" => Charset::Windows1256,
        "windows-1257" => Charset::Windows1257,
        "windows-1258" => Charset::Windows1258,
        "windows-31j" => Charset::ShiftJis,
        "windows-874" => Charset::Windows874,
        "windows-936" => Charset::Gbk,
        "windows-949" => Charset::EucKr,
        "windows_1250" => Charset::Windows1250,
        "windows_1251" => Charset::Windows1251,
        "windows_1252" => Charset::Windows1252,
        "windows_1253" => Charset::Windows1253,
        "windows_1254" => Charset::Windows1254,
        "windows_1255" => Charset::Windows1255,
        "windows_1256" => Charset::Windows1256,
        "windows_1257" => Charset::Windows1257,
        "windows_1258" => Charset::Windows1258,
        "windows_31j" => Charset::ShiftJis,
        "windows_874" => Charset::Windows874,
        "windows_936" => Charset::Gbk,
        "windows_949" => Charset::EucKr,
        "x-cp1250" => Charset::Windows1250,
        "x-cp1251" => Charset::Windows1251,
        "x-cp1252" => Charset::Windows1252,
        "x-cp1253" => Charset::Windows1253,
        "x-cp1254" => Charset::Windows1254,
        "x-cp1255" => Charset::Windows1255,
        "x-cp1256" => Charset::Windows1256,
        "x-cp1257" => Charset::Windows1257,
        "x-cp1258" => Charset::Windows1258,
        "x-euc-jp" => Charset::EucJp,
        "x-euc_jp" => Charset::EucJp,
        "x-gbk" => Charset::Gbk,
        "x-mac-cyrillic" => Charset::XMacCyrillic,
        "x-mac-roman" => Charset::Macintosh,
        "x-mac-ukrainian" => Charset::XMacCyrillic,
        "x-mac_cyrillic" => Charset::XMacCyrillic,
        "x-mac_roman" => Charset::Macintosh,
        "x-mac_ukrainian" => Charset::XMacCyrillic,
        "x-sjis" => Charset::ShiftJis,
        "x-unicode20utf8" => Charset::Utf8,
        "x-user-defined" => Charset::XUserDefined,
        "x-user_defined" => Charset::XUserDefined,
        "x-windows-949" => Charset::EucKr,
        "x-windows_949" => Charset::EucKr,
        "x-x-big5" => Charset::Big5,
        "x-x_big5" => Charset::Big5,
        "x_cp1250" => Charset::Windows1250,
        "x_cp1251" => Charset::Windows1251,
        "x_cp1252" => Charset::Windows1252,
        "x_cp1253" => Charset::Windows1253,
        "x_cp1254" => Charset::Windows1254,
        "x_cp1255" => Charset::Windows1255,
        "x_cp1256" => Charset::Windows1256,
        "x_cp1257" => Charset::Windows1257,
        "x_cp1258" => Charset::Windows1258,
        "x_euc-jp" => Charset::EucJp,
        "x_euc_jp" => Charset::EucJp,
        "x_gbk" => Charset::Gbk,
        "x_mac-cyrillic" => Charset::XMacCyrillic,
        "x_mac-roman" => Charset::Macintosh,
        "x_mac-ukrainian" => Charset::XMacCyrillic,
        "x_mac_cyrillic" => Charset::XMacCyrillic,
        "x_mac_roman" => Charset::Macintosh,
        "x_mac_ukrainian" => Charset::XMacCyrillic,
        "x_sjis" => Charset::ShiftJis,
        "x_unicode20utf8" => Charset::Utf8,
        "x_user-defined" => Charset::XUserDefined,
        "x_user_defined" => Charset::XUserDefined,
        "x_windows-949" => Charset::EucKr,
        "x_windows_949" => Charset::EucKr,
        "x_x-big5" => Charset::Big5,
        "x_x_big5" => Charset::Big5,
    )
    .copied()
}