Terraria
v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
DecoderReplacementFallbackBuffer.cs
Go to the documentation of this file.
1
namespace
System.Text
;
2
3
public
sealed
class
DecoderReplacementFallbackBuffer
:
DecoderFallbackBuffer
4
{
5
private
readonly
string
_strDefault
;
6
7
private
int
_fallbackCount
= -1;
8
9
private
int
_fallbackIndex
= -1;
10
11
public
override
int
Remaining
12
{
13
get
14
{
15
if
(
_fallbackCount
>= 0)
16
{
17
return
_fallbackCount
;
18
}
19
return
0;
20
}
21
}
22
23
public
DecoderReplacementFallbackBuffer
(
DecoderReplacementFallback
fallback)
24
{
25
_strDefault
= fallback.
DefaultString
;
26
}
27
28
public
override
bool
Fallback
(
byte
[] bytesUnknown,
int
index
)
29
{
30
if
(
_fallbackCount
>= 1)
31
{
32
DecoderFallbackBuffer
.
ThrowLastBytesRecursive
(bytesUnknown);
33
}
34
if
(
_strDefault
.Length == 0)
35
{
36
return
false
;
37
}
38
_fallbackCount
=
_strDefault
.Length;
39
_fallbackIndex
= -1;
40
return
true
;
41
}
42
43
public
override
char
GetNextChar
()
44
{
45
_fallbackCount
--;
46
_fallbackIndex
++;
47
if
(
_fallbackCount
< 0)
48
{
49
return
'\0'
;
50
}
51
if
(
_fallbackCount
==
int
.MaxValue)
52
{
53
_fallbackCount
= -1;
54
return
'\0'
;
55
}
56
return
_strDefault
[
_fallbackIndex
];
57
}
58
59
public
override
bool
MovePrevious
()
60
{
61
if
(
_fallbackCount
>= -1 &&
_fallbackIndex
>= 0)
62
{
63
_fallbackIndex
--;
64
_fallbackCount
++;
65
return
true
;
66
}
67
return
false
;
68
}
69
70
public
unsafe
override
void
Reset
()
71
{
72
_fallbackCount
= -1;
73
_fallbackIndex
= -1;
74
byteStart
=
null
;
75
}
76
77
internal
unsafe
override
int
InternalFallback
(
byte
[]
bytes
,
byte
* pBytes)
78
{
79
return
_strDefault
.Length;
80
}
81
}
System.Text.DecoderFallbackBuffer.byteStart
unsafe byte * byteStart
Definition
DecoderFallbackBuffer.cs:7
System.Text.DecoderFallbackBuffer.ThrowLastBytesRecursive
static void ThrowLastBytesRecursive(byte[] bytesUnknown)
Definition
DecoderFallbackBuffer.cs:210
System.Text.DecoderFallbackBuffer
Definition
DecoderFallbackBuffer.cs:6
System.Text.DecoderReplacementFallbackBuffer.Remaining
override int Remaining
Definition
DecoderReplacementFallbackBuffer.cs:12
System.Text.DecoderReplacementFallbackBuffer._strDefault
readonly string _strDefault
Definition
DecoderReplacementFallbackBuffer.cs:5
System.Text.DecoderReplacementFallbackBuffer._fallbackIndex
int _fallbackIndex
Definition
DecoderReplacementFallbackBuffer.cs:9
System.Text.DecoderReplacementFallbackBuffer.InternalFallback
unsafe override int InternalFallback(byte[] bytes, byte *pBytes)
Definition
DecoderReplacementFallbackBuffer.cs:77
System.Text.DecoderReplacementFallbackBuffer.GetNextChar
override char GetNextChar()
Definition
DecoderReplacementFallbackBuffer.cs:43
System.Text.DecoderReplacementFallbackBuffer.MovePrevious
override bool MovePrevious()
Definition
DecoderReplacementFallbackBuffer.cs:59
System.Text.DecoderReplacementFallbackBuffer._fallbackCount
int _fallbackCount
Definition
DecoderReplacementFallbackBuffer.cs:7
System.Text.DecoderReplacementFallbackBuffer.DecoderReplacementFallbackBuffer
DecoderReplacementFallbackBuffer(DecoderReplacementFallback fallback)
Definition
DecoderReplacementFallbackBuffer.cs:23
System.Text.DecoderReplacementFallbackBuffer.Fallback
override bool Fallback(byte[] bytesUnknown, int index)
Definition
DecoderReplacementFallbackBuffer.cs:28
System.Text.DecoderReplacementFallbackBuffer.Reset
unsafe override void Reset()
Definition
DecoderReplacementFallbackBuffer.cs:70
System.Text.DecoderReplacementFallbackBuffer
Definition
DecoderReplacementFallbackBuffer.cs:4
System.Text.DecoderReplacementFallback.DefaultString
string DefaultString
Definition
DecoderReplacementFallback.cs:11
System.Text.DecoderReplacementFallback
Definition
DecoderReplacementFallback.cs:6
System.Text
Definition
ConsoleEncoding.cs:1
System.ExceptionArgument.bytes
@ bytes
System.ExceptionArgument.index
@ index
source
System.Private.CoreLib
System.Text
DecoderReplacementFallbackBuffer.cs
Generated by
1.10.0