yasna/tags/
mod.rs

1// Copyright 2016 Masaki Hara
2//
3// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
4// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
5// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
6// option. This file may not be copied, modified, or distributed
7// except according to those terms.
8
9//! Provides universal tag constants.
10
11use super::{Tag,TagClass};
12
13/// A special tag representing "end of contents".
14pub const TAG_EOC : Tag = Tag {
15    tag_class: TagClass::Universal,
16    tag_number: 0,
17};
18
19/// A universal tag for BOOLEAN.
20pub const TAG_BOOLEAN : Tag = Tag {
21    tag_class: TagClass::Universal,
22    tag_number: 1,
23};
24
25/// A universal tag for INTEGER.
26pub const TAG_INTEGER : Tag = Tag {
27    tag_class: TagClass::Universal,
28    tag_number: 2,
29};
30
31/// A universal tag for BITSTRING.
32pub const TAG_BITSTRING : Tag = Tag {
33    tag_class: TagClass::Universal,
34    tag_number: 3,
35};
36
37/// A universal tag for OCTETSTRING.
38pub const TAG_OCTETSTRING : Tag = Tag {
39    tag_class: TagClass::Universal,
40    tag_number: 4,
41};
42
43/// A universal tag for NULL.
44pub const TAG_NULL : Tag = Tag {
45    tag_class: TagClass::Universal,
46    tag_number: 5,
47};
48
49/// A universal tag for object identifiers.
50pub const TAG_OID : Tag = Tag {
51    tag_class: TagClass::Universal,
52    tag_number: 6,
53};
54
55/// A universal tag for object descriptors.
56pub const TAG_OBJECT_DESCRIPTOR : Tag = Tag {
57    tag_class: TagClass::Universal,
58    tag_number: 7,
59};
60
61/// A universal tag for external/instance-of types.
62pub const TAG_EXT : Tag = Tag {
63    tag_class: TagClass::Universal,
64    tag_number: 8,
65};
66
67/// A universal tag for REAL.
68pub const TAG_REAL : Tag = Tag {
69    tag_class: TagClass::Universal,
70    tag_number: 9,
71};
72
73/// A universal tag for enumerated types.
74pub const TAG_ENUM : Tag = Tag {
75    tag_class: TagClass::Universal,
76    tag_number: 10,
77};
78
79/// A universal tag for embedded-pdv types.
80pub const TAG_EMBEDDED_PDV : Tag = Tag {
81    tag_class: TagClass::Universal,
82    tag_number: 11,
83};
84
85/// A universal tag for UTF8String.
86pub const TAG_UTF8STRING : Tag = Tag {
87    tag_class: TagClass::Universal,
88    tag_number: 12,
89};
90
91/// A universal tag for relative object identifiers.
92pub const TAG_RELATIVE_OID : Tag = Tag {
93    tag_class: TagClass::Universal,
94    tag_number: 13,
95};
96
97/// A universal tag for TIME.
98pub const TAG_TIME : Tag = Tag {
99    tag_class: TagClass::Universal,
100    tag_number: 14,
101};
102
103/// A universal tag for SEQUENCE/SEQUENCE OF.
104pub const TAG_SEQUENCE : Tag = Tag {
105    tag_class: TagClass::Universal,
106    tag_number: 16,
107};
108
109/// A universal tag for SET/SET OF.
110pub const TAG_SET : Tag = Tag {
111    tag_class: TagClass::Universal,
112    tag_number: 17,
113};
114
115/// A universal tag for NumericString.
116pub const TAG_NUMERICSTRING : Tag = Tag {
117    tag_class: TagClass::Universal,
118    tag_number: 18,
119};
120
121/// A universal tag for PrintableString.
122pub const TAG_PRINTABLESTRING : Tag = Tag {
123    tag_class: TagClass::Universal,
124    tag_number: 19,
125};
126
127/// A universal tag for TeletexString.
128pub const TAG_TELETEXSTRING : Tag = Tag {
129    tag_class: TagClass::Universal,
130    tag_number: 20,
131};
132
133/// A universal tag for VideotexString.
134pub const TAG_VIDEOTEXSTRING : Tag = Tag {
135    tag_class: TagClass::Universal,
136    tag_number: 21,
137};
138
139/// A universal tag for IA5String.
140pub const TAG_IA5STRING : Tag = Tag {
141    tag_class: TagClass::Universal,
142    tag_number: 22,
143};
144
145/// A universal tag for UTCTime.
146pub const TAG_UTCTIME : Tag = Tag {
147    tag_class: TagClass::Universal,
148    tag_number: 23,
149};
150
151/// A universal tag for GeneralizedTime.
152pub const TAG_GENERALIZEDTIME : Tag = Tag {
153    tag_class: TagClass::Universal,
154    tag_number: 24,
155};
156
157/// A universal tag for GraphicString.
158pub const TAG_GRAPHICSTRING : Tag = Tag {
159    tag_class: TagClass::Universal,
160    tag_number: 25,
161};
162
163/// A universal tag for VisibleString.
164pub const TAG_VISIBLESTRING : Tag = Tag {
165    tag_class: TagClass::Universal,
166    tag_number: 26,
167};
168
169/// A universal tag for GeneralString.
170pub const TAG_GENERALSTRING : Tag = Tag {
171    tag_class: TagClass::Universal,
172    tag_number: 27,
173};
174
175/// A universal tag for UniversalString.
176pub const TAG_UNIVERSALSTRING : Tag = Tag {
177    tag_class: TagClass::Universal,
178    tag_number: 28,
179};
180
181/// A universal tag for BMPString.
182pub const TAG_BMPSTRING : Tag = Tag {
183    tag_class: TagClass::Universal,
184    tag_number: 30,
185};
186
187/// A universal tag for DATE.
188pub const TAG_DATE : Tag = Tag {
189    tag_class: TagClass::Universal,
190    tag_number: 31,
191};
192
193/// A universal tag for TIME-OF-DAY.
194pub const TAG_TIME_OF_DAY : Tag = Tag {
195    tag_class: TagClass::Universal,
196    tag_number: 32,
197};
198
199/// A universal tag for DATE-TIME.
200pub const TAG_DATE_TIME : Tag = Tag {
201    tag_class: TagClass::Universal,
202    tag_number: 33,
203};
204
205/// A universal tag for DURATION.
206pub const TAG_DURATION : Tag = Tag {
207    tag_class: TagClass::Universal,
208    tag_number: 34,
209};
210
211/// A universal tag for OID internationalized resource identifiers.
212pub const TAG_OID_INTL_RESID : Tag = Tag {
213    tag_class: TagClass::Universal,
214    tag_number: 35,
215};
216
217/// A universal tag for relative OID internationalized resource identifiers.
218pub const TAG_RELATIVE_OID_INTL_RESID : Tag = Tag {
219    tag_class: TagClass::Universal,
220    tag_number: 36,
221};