<PackageReference Include="Apache.Arrow.Scalars" Version="23.0.0" />

Apache.Arrow.Scalars.Variant.VariantReader

public struct VariantReader
namespace Apache.Arrow.Scalars.Variant { public ref struct VariantReader { public ReadOnlySpan<byte> Metadata { get; } public ReadOnlySpan<byte> Value { get; } public byte Header { get; } public VariantBasicType BasicType { get; } public VariantPrimitiveType? PrimitiveType { get; } public bool IsNull { get; } public bool IsBoolean { get; } public bool IsString { get; } public bool IsObject { get; } public bool IsArray { get; } public bool IsNumeric { get; } public VariantReader(ReadOnlySpan<byte> metadata, ReadOnlySpan<byte> value); public bool GetBoolean(); public sbyte GetInt8(); public short GetInt16(); public int GetInt32(); public long GetInt64(); public float GetFloat(); public double GetDouble(); public decimal GetDecimal4(); public decimal GetDecimal8(); public ReadOnlySpan<byte> GetDecimal16Raw(out byte scale); public decimal GetDecimal16(); public SqlDecimal GetSqlDecimal(); public bool TryGetDecimal16(out decimal value); public int GetDateDays(); public DateTime GetDate(); public long GetTimestampMicros(); public DateTimeOffset GetTimestamp(); public long GetTimestampNtzMicros(); public DateTime GetTimestampNtz(); public long GetTimeNtzMicros(); public long GetTimestampTzNanos(); public long GetTimestampNtzNanos(); public ReadOnlySpan<byte> GetBinary(); public ReadOnlySpan<byte> GetStringBytes(); public string GetString(); public Guid GetUuid(); public ReadOnlySpan<byte> GetUuidBytes(); public VariantValue ToVariantValue(); } }