49                object value = 
new object();
 
 
   57        : this(codePage, codePage)
 
 
   62        : base(codePage, dataCodePage)
 
 
   67        : base(codePage, dataCodePage, enc, dec)
 
 
   71    internal unsafe 
static char ReadChar(
char* pChar)
 
 
  111            fixed (
byte* ptr3 = 
array)
 
  113                char* ptr4 = (
char*)ptr3;
 
 
  213            fixed (
byte* ptr = 
array)
 
  215                char* ptr2 = (
char*)ptr;
 
  321                char[] array2 = 
new char[num2 * 2];
 
  379                            array2[num2++] = (char)bytes2;
 
  387                    for (
int i = 0; i < array2.Length - 2; i += 2)
 
  391                        for (
int j = i + 2; j < array2.Length; j += 2)
 
  401                            char c5 = array2[num3];
 
  402                            array2[num3] = array2[i];
 
  404                            c5 = array2[num3 + 1];
 
  405                            array2[num3 + 1] = array2[i + 1];
 
  463                array2 = 
new char[num2 * 2];
 
  515                            array2[num2++] = (char)num4;
 
 
  532            c = encoder.charLeftOver;
 
  533            if (encoder.InternalHasFallbackBuffer && encoder.FallbackBuffer.Remaining > 0)
 
  544            encoderFallbackBuffer = encoder.FallbackBuffer;
 
  550        while ((c2 = ((encoderFallbackBuffer != 
null) ? encoderFallbackBufferHelper.
InternalGetNextChar() : 
'\0')) != 0 || 
chars < ptr)
 
  558            if (num2 == 0 && c2 != 0)
 
  560                if (encoderFallbackBuffer == 
null)
 
  562                    encoderFallbackBuffer = ((encoder != 
null) ? encoder.FallbackBuffer : base.EncoderFallback.CreateFallbackBuffer());
 
 
  592            c = encoder.charLeftOver;
 
  593            encoderFallbackBuffer = encoder.FallbackBuffer;
 
  596            if (encoder.m_throwOnOverflow && encoderFallbackBuffer.
Remaining > 0)
 
  606        while ((c2 = ((encoderFallbackBuffer != 
null) ? encoderFallbackBufferHelper.
InternalGetNextChar() : 
'\0')) != 0 || 
chars < ptr)
 
  614            if (num == 0 && c2 != 0)
 
  616                if (encoderFallbackBuffer == 
null)
 
  618                    encoderFallbackBuffer = base.EncoderFallback.CreateFallbackBuffer();
 
  627                if (
bytes + 1 >= ptr4)
 
  629                    if (encoderFallbackBuffer == 
null || !encoderFallbackBufferHelper.
bFallingBack)
 
  640                *
bytes = (byte)(num >> 8);
 
  643            else if (
bytes >= ptr4)
 
  645                if (encoderFallbackBuffer == 
null || !encoderFallbackBufferHelper.
bFallingBack)
 
  656            *
bytes = (byte)(num & 0xFFu);
 
  661            if (encoderFallbackBuffer != 
null && !encoderFallbackBufferHelper.
bUsedEncoder)
 
  663                encoder.charLeftOver = 
'\0';
 
  665            encoder.m_charsUsed = (int)(
chars - ptr2);
 
  667        return (
int)(
bytes - ptr3);
 
 
  678        if (dBCSDecoder != 
null && dBCSDecoder.
bLeftOver > 0)
 
  689                byte[] bytes2 = 
new byte[1] { dBCSDecoder.bLeftOver };
 
  692            int num2 = dBCSDecoder.bLeftOver << 8;
 
  701                byte[] bytes3 = 
new byte[2]
 
  726                    if (dBCSDecoder != 
null && !dBCSDecoder.
MustFlush)
 
  734            if (c == 
'\0' && num3 != 0)
 
  736                if (decoderFallbackBuffer == 
null)
 
  738                    decoderFallbackBuffer = ((dBCSDecoder != 
null) ? dBCSDecoder.
FallbackBuffer : base.DecoderFallback.CreateFallbackBuffer());
 
  743                byte[] bytes4 = ((num3 >= 256) ? 
new byte[2]
 
  747                } : 
new byte[1] { (byte)num3 });
 
 
  765        if (dBCSDecoder != 
null && dBCSDecoder.
bLeftOver > 0)
 
  776                byte[] bytes2 = 
new byte[1] { dBCSDecoder.bLeftOver };
 
  781                dBCSDecoder.bLeftOver = 0;
 
  782                return (
int)(
chars - ptr3);
 
  784            int num = dBCSDecoder.bLeftOver << 8;
 
  788            if (c == 
'\0' && num != 0)
 
  793                byte[] bytes3 = 
new byte[2]
 
  828                    if (dBCSDecoder != 
null && !dBCSDecoder.
MustFlush)
 
  831                        dBCSDecoder.bLeftOver = (byte)num2;
 
  837            if (c2 == 
'\0' && num2 != 0)
 
  839                if (decoderFallbackBuffer == 
null)
 
  841                    decoderFallbackBuffer = ((dBCSDecoder != 
null) ? dBCSDecoder.
FallbackBuffer : base.DecoderFallback.CreateFallbackBuffer());
 
  845                byte[] 
array = ((num2 >= 256) ? 
new byte[2]
 
  849                } : 
new byte[1] { (byte)num2 });
 
  871        if (dBCSDecoder != 
null)
 
  875                dBCSDecoder.bLeftOver = 0;
 
  877            dBCSDecoder.m_bytesUsed = (int)(
bytes - ptr);
 
  879        return (
int)(
chars - ptr3);
 
 
  889        if (base.EncoderFallback.MaxCharCount > 1)
 
  891            num *= base.EncoderFallback.MaxCharCount;
 
  894        if (num > 
int.MaxValue)
 
 
  908        if (base.DecoderFallback.MaxCharCount > 1)
 
  910            num *= base.DecoderFallback.MaxCharCount;
 
  912        if (num > 
int.MaxValue)
 
 
 
static readonly bool IsLittleEndian
 
static sbyte ReverseEndianness(sbyte value)
 
static unsafe void InitBlockUnaligned(void *startAddress, byte value, uint byteCount)
 
static string NotSupported_NoCodepageData
 
static string Argument_EncoderFallbackNotEmpty
 
static string ArgumentOutOfRange_GetCharCountOverflow
 
static string ArgumentOutOfRange_GetByteCountOverflow
 
static string Format(string resourceFormat, object p1)
 
static string ArgumentOutOfRange_NeedNonNegNum
 
void CheckMemorySection()
 
int m_firstDataWordOffset
 
unsafe byte * GetNativeMemory(int iSize)
 
char[] arrayUnicodeBestFit
 
static readonly object s_streamLock
 
static Stream s_codePagesEncodingDataStream
 
DBCSDecoder(DBCSCodePageEncoding encoding)
 
unsafe override int GetBytes(char *chars, int charCount, byte *bytes, int byteCount, System.Text.EncoderNLS encoder)
 
unsafe override void ReadBestFitTable()
 
override Decoder GetDecoder()
 
unsafe override void LoadManagedCodePage()
 
unsafe override int GetByteCount(char *chars, int count, System.Text.EncoderNLS encoder)
 
DBCSCodePageEncoding(int codePage)
 
static unsafe char ReadChar(char *pChar)
 
virtual bool CleanUpBytes(ref int bytes)
 
static object s_InternalSyncObject
 
virtual unsafe void CleanUpEndBytes(char *chars)
 
unsafe DBCSCodePageEncoding(int codePage, int dataCodePage, EncoderFallback enc, DecoderFallback dec)
 
unsafe DBCSCodePageEncoding(int codePage, int dataCodePage)
 
override int GetMaxCharCount(int byteCount)
 
override int GetMaxByteCount(int charCount)
 
unsafe char * mapBytesToUnicode
 
unsafe override int GetCharCount(byte *bytes, int count, System.Text.DecoderNLS baseDecoder)
 
static object InternalSyncObject
 
unsafe ushort * mapUnicodeToBytes
 
unsafe override int GetChars(byte *bytes, int byteCount, char *chars, int charCount, System.Text.DecoderNLS baseDecoder)
 
DecoderFallbackBuffer m_fallbackBuffer
 
new DecoderFallbackBuffer FallbackBuffer
 
void ThrowBytesOverflow()
 
void ThrowCharsOverflow()
 
override string EncodingName
 
static int CompareExchange(ref int location1, int value, int comparand)
 
unsafe bool InternalFallback(byte[] bytes, byte *pBytes, ref char *chars)
 
unsafe void InternalReset()
 
unsafe void InternalInitialize(byte *_byteStart, char *_charEnd)
 
unsafe void InternalInitialize(char *_charStart, char *_charEnd, System.Text.EncoderNLS _encoder, bool _setEncoder)
 
char InternalGetNextChar()
 
unsafe bool InternalFallback(char ch, ref char *chars)