Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
AsnEncodedData.cs
Go to the documentation of this file.
3
5
6public class AsnEncodedData
7{
8 private Oid _oid;
9
10 private byte[] _rawData;
11
12 public Oid? Oid
13 {
14 get
15 {
16 return _oid;
17 }
18 set
19 {
20 _oid = value;
21 }
22 }
23
24 public byte[] RawData
25 {
26 get
27 {
28 return _rawData;
29 }
30 [MemberNotNull("_rawData")]
31 set
32 {
33 if (value == null)
34 {
35 throw new ArgumentNullException("value");
36 }
37 _rawData = value.CloneByteArray();
38 }
39 }
40
41 protected AsnEncodedData()
42 {
43 _rawData = Array.Empty<byte>();
44 }
45
46 public AsnEncodedData(byte[] rawData)
47 {
48 Reset(null, rawData);
49 }
50
52 {
53 Reset(null, rawData);
54 }
55
56 public AsnEncodedData(AsnEncodedData asnEncodedData)
57 {
58 if (asnEncodedData == null)
59 {
60 throw new ArgumentNullException("asnEncodedData");
61 }
62 Reset(asnEncodedData._oid, asnEncodedData._rawData);
63 }
64
65 public AsnEncodedData(Oid? oid, byte[] rawData)
66 {
67 Reset(oid, rawData);
68 }
69
70 public AsnEncodedData(string oid, byte[] rawData)
71 {
72 Reset(new Oid(oid), rawData);
73 }
74
76 {
77 Reset(oid, rawData);
78 }
79
80 public AsnEncodedData(string oid, ReadOnlySpan<byte> rawData)
81 {
82 Reset(new Oid(oid), rawData);
83 }
84
85 public virtual void CopyFrom(AsnEncodedData asnEncodedData)
86 {
87 if (asnEncodedData == null)
88 {
89 throw new ArgumentNullException("asnEncodedData");
90 }
91 Reset(asnEncodedData._oid, asnEncodedData._rawData);
92 }
93
94 public virtual string Format(bool multiLine)
95 {
96 if (_rawData == null || _rawData.Length == 0)
97 {
98 return string.Empty;
99 }
100 return AsnFormatter.Instance.Format(_oid, _rawData, multiLine);
101 }
102
103 [MemberNotNull("_rawData")]
104 private void Reset(Oid oid, byte[] rawData)
105 {
106 Oid = oid;
107 RawData = rawData;
108 }
109
110 [MemberNotNull("_rawData")]
111 private void Reset(Oid oid, ReadOnlySpan<byte> rawData)
112 {
113 Oid = oid;
114 _rawData = rawData.ToArray();
115 }
116}
AsnEncodedData(ReadOnlySpan< byte > rawData)
virtual string Format(bool multiLine)
AsnEncodedData(Oid? oid, ReadOnlySpan< byte > rawData)
AsnEncodedData(AsnEncodedData asnEncodedData)
void Reset(Oid oid, ReadOnlySpan< byte > rawData)
AsnEncodedData(string oid, ReadOnlySpan< byte > rawData)
AsnEncodedData(string oid, byte[] rawData)
virtual void CopyFrom(AsnEncodedData asnEncodedData)