|
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.
using System.Text;
using Microsoft.CodeAnalysis;
using EncodingExtensions = Microsoft.CodeAnalysis.EncodingExtensions;
namespace Roslyn.Utilities;
internal sealed partial class ObjectWriter
{
internal enum TypeCode : byte
{
/// <summary>
/// The null value
/// </summary>
Null,
/// <summary>
/// A string encoded as UTF-8 (using BinaryWriter.Write(string))
/// </summary>
StringUtf8,
/// <summary>
/// A string encoded as UTF16 (as array of UInt16 values)
/// </summary>
StringUtf16,
/// <summary>
/// A reference to a string with the id encoded as 1 byte.
/// </summary>
StringRef_1Byte,
/// <summary>
/// A reference to a string with the id encoded as 2 bytes.
/// </summary>
StringRef_2Bytes,
/// <summary>
/// A reference to a string with the id encoded as 4 bytes.
/// </summary>
StringRef_4Bytes,
/// <summary>
/// The boolean value true.
/// </summary>
Boolean_True,
/// <summary>
/// The boolean value char.
/// </summary>
Boolean_False,
/// <summary>
/// A character value encoded as 2 bytes.
/// </summary>
Char,
/// <summary>
/// An Int8 value encoded as 1 byte.
/// </summary>
Int8,
/// <summary>
/// An Int16 value encoded as 2 bytes.
/// </summary>
Int16,
/// <summary>
/// An Int32 value encoded as 4 bytes.
/// </summary>
Int32,
/// <summary>
/// An Int32 value encoded as 1 byte.
/// </summary>
Int32_1Byte,
/// <summary>
/// An Int32 value encoded as 2 bytes.
/// </summary>
Int32_2Bytes,
/// <summary>
/// The Int32 value 0
/// </summary>
Int32_0,
/// <summary>
/// The Int32 value 1
/// </summary>
Int32_1,
/// <summary>
/// The Int32 value 2
/// </summary>
Int32_2,
/// <summary>
/// The Int32 value 3
/// </summary>
Int32_3,
/// <summary>
/// The Int32 value 4
/// </summary>
Int32_4,
/// <summary>
/// The Int32 value 5
/// </summary>
Int32_5,
/// <summary>
/// The Int32 value 6
/// </summary>
Int32_6,
/// <summary>
/// The Int32 value 7
/// </summary>
Int32_7,
/// <summary>
/// The Int32 value 8
/// </summary>
Int32_8,
/// <summary>
/// The Int32 value 9
/// </summary>
Int32_9,
/// <summary>
/// The Int32 value 10
/// </summary>
Int32_10,
/// <summary>
/// An Int64 value encoded as 8 bytes
/// </summary>
Int64,
/// <summary>
/// A UInt8 value encoded as 1 byte.
/// </summary>
UInt8,
/// <summary>
/// A UIn16 value encoded as 2 bytes.
/// </summary>
UInt16,
/// <summary>
/// A UInt32 value encoded as 4 bytes.
/// </summary>
UInt32,
/// <summary>
/// A UInt32 value encoded as 1 byte.
/// </summary>
UInt32_1Byte,
/// <summary>
/// A UInt32 value encoded as 2 bytes.
/// </summary>
UInt32_2Bytes,
/// <summary>
/// The UInt32 value 0
/// </summary>
UInt32_0,
/// <summary>
/// The UInt32 value 1
/// </summary>
UInt32_1,
/// <summary>
/// The UInt32 value 2
/// </summary>
UInt32_2,
/// <summary>
/// The UInt32 value 3
/// </summary>
UInt32_3,
/// <summary>
/// The UInt32 value 4
/// </summary>
UInt32_4,
/// <summary>
/// The UInt32 value 5
/// </summary>
UInt32_5,
/// <summary>
/// The UInt32 value 6
/// </summary>
UInt32_6,
/// <summary>
/// The UInt32 value 7
/// </summary>
UInt32_7,
/// <summary>
/// The UInt32 value 8
/// </summary>
UInt32_8,
/// <summary>
/// The UInt32 value 9
/// </summary>
UInt32_9,
/// <summary>
/// The UInt32 value 10
/// </summary>
UInt32_10,
/// <summary>
/// A UInt64 value encoded as 8 bytes.
/// </summary>
UInt64,
/// <summary>
/// A float value encoded as 4 bytes.
/// </summary>
Float4,
/// <summary>
/// A double value encoded as 8 bytes.
/// </summary>
Float8,
/// <summary>
/// A decimal value encoded as 12 bytes.
/// </summary>
Decimal,
/// <summary>
/// A DateTime value
/// </summary>
DateTime,
/// <summary>
/// An array with length encoded as compressed uint
/// </summary>
Array,
/// <summary>
/// An array with zero elements
/// </summary>
Array_0,
/// <summary>
/// An array with one element
/// </summary>
Array_1,
/// <summary>
/// An array with 2 elements
/// </summary>
Array_2,
/// <summary>
/// An array with 3 elements
/// </summary>
Array_3,
/// <summary>
/// Encoding serialized as <see cref="Encoding.WebName"/>.
/// </summary>
EncodingName,
/// <summary>
/// Encoding serialized as <see cref="TextEncodingKind"/>.
/// </summary>
FirstWellKnownTextEncoding,
LastWellKnownTextEncoding = FirstWellKnownTextEncoding + EncodingExtensions.LastTextEncodingKind - EncodingExtensions.FirstTextEncodingKind,
/// <summary>
/// Encoding serialized as <see cref="Encoding.CodePage"/>.
/// </summary>
EncodingCodePage,
}
}
|