control_code/dec/
charset.rs

1//            DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
2//                    Version 2, December 2004
3//
4// Copyleft (ↄ) meh. <meh@schizofreni.co> | http://meh.schizofreni.co
5//
6// Everyone is permitted to copy and distribute verbatim or modified
7// copies of this license document, and changing it is allowed as long
8// as the name is changed.
9//
10//            DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
11//   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
12//
13//  0. You just DO WHAT THE FUCK YOU WANT TO.
14
15#[derive(Eq, PartialEq, Copy, Clone, Debug)]
16pub enum Charset {
17	UserPreferred,
18	DEC(DEC),
19	NRCS(NRCS),
20	ISO(ISO),
21}
22
23impl From<DEC> for Charset {
24	fn from(value: DEC) -> Self {
25		Charset::DEC(value)
26	}
27}
28
29impl From<NRCS> for Charset {
30	fn from(value: NRCS) -> Self {
31		Charset::NRCS(value)
32	}
33}
34
35impl From<ISO> for Charset {
36	fn from(value: ISO) -> Self {
37		Charset::ISO(value)
38	}
39}
40
41#[derive(Eq, PartialEq, Copy, Clone, Debug)]
42pub enum DEC {
43	Supplemental,
44	Greek,
45	Hebrew,
46	Turkish,
47	Cyrillic,
48	Graphic,
49	Technical,
50}
51
52#[derive(Eq, PartialEq, Copy, Clone, Debug)]
53pub enum NRCS {
54	UK,
55	French,
56	FrenchCanadian,
57	Norwegian,
58	Finnish,
59	German,
60	Italian,
61	Swiss,
62	Swedish,
63	Spanish,
64	Portuguese,
65	Greek,
66	Hebrew,
67	Turkish,
68	SCS,
69	Russian,
70}
71
72#[derive(Eq, PartialEq, Copy, Clone, Debug)]
73pub enum ISO {
74	Latin1,
75	Latin2,
76	Greek,
77	Hebrew,
78	Latin5,
79	Cyrillic,
80}