Terraria
v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
ByteStack.cs
Go to the documentation of this file.
1
namespace
System.Xml
;
2
3
internal
sealed
class
ByteStack
4
{
5
private
byte
[]
_stack
;
6
7
private
readonly
int
_growthRate
;
8
9
private
int
_top
;
10
11
private
int
_size
;
12
13
public
ByteStack
(
int
growthRate
)
14
{
15
_growthRate
=
growthRate
;
16
_top
= 0;
17
_stack
=
new
byte
[
growthRate
];
18
_size
=
growthRate
;
19
}
20
21
public
void
Push
(
byte
data)
22
{
23
if
(
_size
==
_top
)
24
{
25
byte
[]
array
=
new
byte
[
_size
+
_growthRate
];
26
if
(
_top
> 0)
27
{
28
Buffer
.
BlockCopy
(
_stack
, 0,
array
, 0,
_top
);
29
}
30
_stack
=
array
;
31
_size
+=
_growthRate
;
32
}
33
_stack
[
_top
++] = data;
34
}
35
36
public
byte
Pop
()
37
{
38
if
(
_top
> 0)
39
{
40
return
_stack
[--
_top
];
41
}
42
return
0;
43
}
44
}
System.Buffer.BlockCopy
static void BlockCopy(Array src, int srcOffset, Array dst, int dstOffset, int count)
Definition
Buffer.cs:102
System.Buffer
Definition
Buffer.cs:8
System.Xml.ByteStack.Push
void Push(byte data)
Definition
ByteStack.cs:21
System.Xml.ByteStack.ByteStack
ByteStack(int growthRate)
Definition
ByteStack.cs:13
System.Xml.ByteStack.Pop
byte Pop()
Definition
ByteStack.cs:36
System.Xml.ByteStack._stack
byte[] _stack
Definition
ByteStack.cs:5
System.Xml.ByteStack._top
int _top
Definition
ByteStack.cs:9
System.Xml.ByteStack._growthRate
readonly int _growthRate
Definition
ByteStack.cs:7
System.Xml.ByteStack._size
int _size
Definition
ByteStack.cs:11
System.Xml.ByteStack
Definition
ByteStack.cs:4
System.Xml.ValueHandleType.Dictionary
@ Dictionary
System.Xml
Definition
BaseRegionIterator.cs:1
System.ExceptionArgument.array
@ array
source
System.Private.Xml
System.Xml
ByteStack.cs
Generated by
1.10.0