Apache.Arrow.Scalars.Variant.VariantEncodingHelper
namespace Apache.Arrow.Scalars.Variant
{
internal static class VariantEncodingHelper
{
public const int MetadataVersion = 1;
public static VariantBasicType GetBasicType(byte header);
public static int GetValueHeader(byte header);
public static byte MakeValueHeader(VariantBasicType basicType, int valueHeader);
public static VariantPrimitiveType GetPrimitiveType(byte header);
public static byte MakePrimitiveHeader(VariantPrimitiveType primitiveType);
public static int GetShortStringLength(byte header);
public static byte MakeShortStringHeader(int length);
public static byte MakeObjectHeader(int fieldIdSize, int offsetSize, bool isLarge);
public static void ParseObjectHeader(byte header, out int fieldIdSize, out int offsetSize, out bool isLarge);
public static byte MakeArrayHeader(int offsetSize, bool isLarge);
public static void ParseArrayHeader(byte header, out int offsetSize, out bool isLarge);
public static void ParseMetadataHeader(byte header, out int version, out bool sortedStrings, out int offsetSize);
public static byte MakeMetadataHeader(bool sortedStrings, int offsetSize);
public static int ReadLittleEndianInt(ReadOnlySpan<byte> span, int byteWidth);
public static void WriteLittleEndianInt(Span<byte> span, int value, int byteWidth);
public static int ByteWidthForValue(int value);
}
}