Class LogicalRead
- Namespace
- ParquetSharp
- Assembly
- ParquetSharp.dll
Parquet physical types to C# types read conversion logic. Separate class for per-element conversion logic.
public static class LogicalRead
- Inheritance
-
LogicalRead
- Inherited Members
Fields
DateTimeOffset
public const long DateTimeOffset = 621355968000000000
Field Value
Methods
ConvertByteArray(ReadOnlySpan<ByteArray>, ReadOnlySpan<short>, Span<byte[]?>, short)
public static void ConvertByteArray(ReadOnlySpan<ByteArray> source, ReadOnlySpan<short> defLevels, Span<byte[]?> destination, short definedLevel)
Parameters
sourceReadOnlySpan<ByteArray>defLevelsReadOnlySpan<short>destinationSpan<byte[]>definedLevelshort
ConvertDateOnly(ReadOnlySpan<int>, ReadOnlySpan<short>, Span<DateOnly?>, short)
public static void ConvertDateOnly(ReadOnlySpan<int> source, ReadOnlySpan<short> defLevels, Span<DateOnly?> destination, short definedLevel)
Parameters
sourceReadOnlySpan<int>defLevelsReadOnlySpan<short>destinationSpan<DateOnly?>definedLevelshort
ConvertDateOnly(ReadOnlySpan<int>, Span<DateOnly>)
public static void ConvertDateOnly(ReadOnlySpan<int> source, Span<DateOnly> destination)
Parameters
sourceReadOnlySpan<int>destinationSpan<DateOnly>
ConvertDateTimeMicros(ReadOnlySpan<long>, ReadOnlySpan<short>, Span<DateTime?>, short, DateTimeKind)
public static void ConvertDateTimeMicros(ReadOnlySpan<long> source, ReadOnlySpan<short> defLevels, Span<DateTime?> destination, short definedLevel, DateTimeKind kind = DateTimeKind.Unspecified)
Parameters
sourceReadOnlySpan<long>defLevelsReadOnlySpan<short>destinationSpan<DateTime?>definedLevelshortkindDateTimeKind
ConvertDateTimeMicros(ReadOnlySpan<long>, Span<DateTime>, DateTimeKind)
public static void ConvertDateTimeMicros(ReadOnlySpan<long> source, Span<DateTime> destination, DateTimeKind kind = DateTimeKind.Unspecified)
Parameters
sourceReadOnlySpan<long>destinationSpan<DateTime>kindDateTimeKind
ConvertDateTimeMillis(ReadOnlySpan<long>, ReadOnlySpan<short>, Span<DateTime?>, short, DateTimeKind)
public static void ConvertDateTimeMillis(ReadOnlySpan<long> source, ReadOnlySpan<short> defLevels, Span<DateTime?> destination, short definedLevel, DateTimeKind kind = DateTimeKind.Unspecified)
Parameters
sourceReadOnlySpan<long>defLevelsReadOnlySpan<short>destinationSpan<DateTime?>definedLevelshortkindDateTimeKind
ConvertDateTimeMillis(ReadOnlySpan<long>, Span<DateTime>, DateTimeKind)
public static void ConvertDateTimeMillis(ReadOnlySpan<long> source, Span<DateTime> destination, DateTimeKind kind = DateTimeKind.Unspecified)
Parameters
sourceReadOnlySpan<long>destinationSpan<DateTime>kindDateTimeKind
ConvertDecimal(ReadOnlySpan<FixedLenByteArray>, ReadOnlySpan<short>, Span<decimal?>, decimal, int, short)
public static void ConvertDecimal(ReadOnlySpan<FixedLenByteArray> source, ReadOnlySpan<short> defLevels, Span<decimal?> destination, decimal multiplier, int typeLength, short definedLevel)
Parameters
sourceReadOnlySpan<FixedLenByteArray>defLevelsReadOnlySpan<short>destinationSpan<decimal?>multiplierdecimaltypeLengthintdefinedLevelshort
ConvertDecimal(ReadOnlySpan<FixedLenByteArray>, Span<decimal>, decimal, int)
public static void ConvertDecimal(ReadOnlySpan<FixedLenByteArray> source, Span<decimal> destination, decimal multiplier, int typeLength)
Parameters
sourceReadOnlySpan<FixedLenByteArray>destinationSpan<decimal>multiplierdecimaltypeLengthint
ConvertDecimal128(ReadOnlySpan<FixedLenByteArray>, ReadOnlySpan<short>, Span<decimal?>, decimal, short)
public static void ConvertDecimal128(ReadOnlySpan<FixedLenByteArray> source, ReadOnlySpan<short> defLevels, Span<decimal?> destination, decimal multiplier, short definedLevel)
Parameters
sourceReadOnlySpan<FixedLenByteArray>defLevelsReadOnlySpan<short>destinationSpan<decimal?>multiplierdecimaldefinedLevelshort
ConvertDecimal128(ReadOnlySpan<FixedLenByteArray>, Span<decimal>, decimal)
public static void ConvertDecimal128(ReadOnlySpan<FixedLenByteArray> source, Span<decimal> destination, decimal multiplier)
Parameters
sourceReadOnlySpan<FixedLenByteArray>destinationSpan<decimal>multiplierdecimal
ConvertDecimal32(ReadOnlySpan<int>, ReadOnlySpan<short>, Span<decimal?>, decimal, short)
public static void ConvertDecimal32(ReadOnlySpan<int> source, ReadOnlySpan<short> defLevels, Span<decimal?> destination, decimal multiplier, short definedLevel)
Parameters
sourceReadOnlySpan<int>defLevelsReadOnlySpan<short>destinationSpan<decimal?>multiplierdecimaldefinedLevelshort
ConvertDecimal32(ReadOnlySpan<int>, Span<decimal>, decimal)
public static void ConvertDecimal32(ReadOnlySpan<int> source, Span<decimal> destination, decimal multiplier)
Parameters
sourceReadOnlySpan<int>destinationSpan<decimal>multiplierdecimal
ConvertDecimal64(ReadOnlySpan<long>, ReadOnlySpan<short>, Span<decimal?>, decimal, short)
public static void ConvertDecimal64(ReadOnlySpan<long> source, ReadOnlySpan<short> defLevels, Span<decimal?> destination, decimal multiplier, short definedLevel)
Parameters
sourceReadOnlySpan<long>defLevelsReadOnlySpan<short>destinationSpan<decimal?>multiplierdecimaldefinedLevelshort
ConvertDecimal64(ReadOnlySpan<long>, Span<decimal>, decimal)
public static void ConvertDecimal64(ReadOnlySpan<long> source, Span<decimal> destination, decimal multiplier)
Parameters
sourceReadOnlySpan<long>destinationSpan<decimal>multiplierdecimal
ConvertHalf(ReadOnlySpan<FixedLenByteArray>, ReadOnlySpan<short>, Span<Half?>, short)
public static void ConvertHalf(ReadOnlySpan<FixedLenByteArray> source, ReadOnlySpan<short> defLevels, Span<Half?> destination, short definedLevel)
Parameters
sourceReadOnlySpan<FixedLenByteArray>defLevelsReadOnlySpan<short>destinationSpan<Half?>definedLevelshort
ConvertHalf(ReadOnlySpan<FixedLenByteArray>, Span<Half>)
public static void ConvertHalf(ReadOnlySpan<FixedLenByteArray> source, Span<Half> destination)
Parameters
sourceReadOnlySpan<FixedLenByteArray>destinationSpan<Half>
ConvertInt16(ReadOnlySpan<int>, ReadOnlySpan<short>, Span<short?>, short)
public static void ConvertInt16(ReadOnlySpan<int> source, ReadOnlySpan<short> defLevels, Span<short?> destination, short definedLevel)
Parameters
sourceReadOnlySpan<int>defLevelsReadOnlySpan<short>destinationSpan<short?>definedLevelshort
ConvertInt16(ReadOnlySpan<int>, Span<short>)
public static void ConvertInt16(ReadOnlySpan<int> source, Span<short> destination)
Parameters
sourceReadOnlySpan<int>destinationSpan<short>
ConvertInt8(ReadOnlySpan<int>, ReadOnlySpan<short>, Span<sbyte?>, short)
public static void ConvertInt8(ReadOnlySpan<int> source, ReadOnlySpan<short> defLevels, Span<sbyte?> destination, short definedLevel)
Parameters
sourceReadOnlySpan<int>defLevelsReadOnlySpan<short>destinationSpan<sbyte?>definedLevelshort
ConvertInt8(ReadOnlySpan<int>, Span<sbyte>)
public static void ConvertInt8(ReadOnlySpan<int> source, Span<sbyte> destination)
Parameters
sourceReadOnlySpan<int>destinationSpan<sbyte>
ConvertNative<TValue>(ReadOnlySpan<TValue>, ReadOnlySpan<short>, Span<TValue?>, short)
public static void ConvertNative<TValue>(ReadOnlySpan<TValue> source, ReadOnlySpan<short> defLevels, Span<TValue?> destination, short definedLevel) where TValue : unmanaged
Parameters
sourceReadOnlySpan<TValue>defLevelsReadOnlySpan<short>destinationSpan<TValue?>definedLevelshort
Type Parameters
TValue
ConvertNative<TValue>(ReadOnlySpan<TValue>, Span<TValue>)
public static void ConvertNative<TValue>(ReadOnlySpan<TValue> source, Span<TValue> destination) where TValue : unmanaged
Parameters
sourceReadOnlySpan<TValue>destinationSpan<TValue>
Type Parameters
TValue
ConvertString(ReadOnlySpan<ByteArray>, ReadOnlySpan<short>, Span<string?>, short)
public static void ConvertString(ReadOnlySpan<ByteArray> source, ReadOnlySpan<short> defLevels, Span<string?> destination, short definedLevel)
Parameters
sourceReadOnlySpan<ByteArray>defLevelsReadOnlySpan<short>destinationSpan<string>definedLevelshort
ConvertString(ReadOnlySpan<ByteArray>, ReadOnlySpan<short>, Span<string?>, short, ByteArrayReaderCache<ByteArray, string>)
public static void ConvertString(ReadOnlySpan<ByteArray> source, ReadOnlySpan<short> defLevels, Span<string?> destination, short definedLevel, ByteArrayReaderCache<ByteArray, string> byteArrayCache)
Parameters
sourceReadOnlySpan<ByteArray>defLevelsReadOnlySpan<short>destinationSpan<string>definedLevelshortbyteArrayCacheByteArrayReaderCache<ByteArray, string>
ConvertTimeOnlyMicros(ReadOnlySpan<long>, ReadOnlySpan<short>, Span<TimeOnly?>, short)
public static void ConvertTimeOnlyMicros(ReadOnlySpan<long> source, ReadOnlySpan<short> defLevels, Span<TimeOnly?> destination, short definedLevel)
Parameters
sourceReadOnlySpan<long>defLevelsReadOnlySpan<short>destinationSpan<TimeOnly?>definedLevelshort
ConvertTimeOnlyMicros(ReadOnlySpan<long>, Span<TimeOnly>)
public static void ConvertTimeOnlyMicros(ReadOnlySpan<long> source, Span<TimeOnly> destination)
Parameters
sourceReadOnlySpan<long>destinationSpan<TimeOnly>
ConvertTimeOnlyMillis(ReadOnlySpan<int>, ReadOnlySpan<short>, Span<TimeOnly?>, short)
public static void ConvertTimeOnlyMillis(ReadOnlySpan<int> source, ReadOnlySpan<short> defLevels, Span<TimeOnly?> destination, short definedLevel)
Parameters
sourceReadOnlySpan<int>defLevelsReadOnlySpan<short>destinationSpan<TimeOnly?>definedLevelshort
ConvertTimeOnlyMillis(ReadOnlySpan<int>, Span<TimeOnly>)
public static void ConvertTimeOnlyMillis(ReadOnlySpan<int> source, Span<TimeOnly> destination)
Parameters
sourceReadOnlySpan<int>destinationSpan<TimeOnly>
ConvertTimeSpanMicros(ReadOnlySpan<long>, ReadOnlySpan<short>, Span<TimeSpan?>, short)
public static void ConvertTimeSpanMicros(ReadOnlySpan<long> source, ReadOnlySpan<short> defLevels, Span<TimeSpan?> destination, short definedLevel)
Parameters
sourceReadOnlySpan<long>defLevelsReadOnlySpan<short>destinationSpan<TimeSpan?>definedLevelshort
ConvertTimeSpanMicros(ReadOnlySpan<long>, Span<TimeSpan>)
public static void ConvertTimeSpanMicros(ReadOnlySpan<long> source, Span<TimeSpan> destination)
Parameters
sourceReadOnlySpan<long>destinationSpan<TimeSpan>
ConvertTimeSpanMillis(ReadOnlySpan<int>, ReadOnlySpan<short>, Span<TimeSpan?>, short)
public static void ConvertTimeSpanMillis(ReadOnlySpan<int> source, ReadOnlySpan<short> defLevels, Span<TimeSpan?> destination, short definedLevel)
Parameters
sourceReadOnlySpan<int>defLevelsReadOnlySpan<short>destinationSpan<TimeSpan?>definedLevelshort
ConvertTimeSpanMillis(ReadOnlySpan<int>, Span<TimeSpan>)
public static void ConvertTimeSpanMillis(ReadOnlySpan<int> source, Span<TimeSpan> destination)
Parameters
sourceReadOnlySpan<int>destinationSpan<TimeSpan>
ConvertUInt16(ReadOnlySpan<int>, ReadOnlySpan<short>, Span<ushort?>, short)
public static void ConvertUInt16(ReadOnlySpan<int> source, ReadOnlySpan<short> defLevels, Span<ushort?> destination, short definedLevel)
Parameters
sourceReadOnlySpan<int>defLevelsReadOnlySpan<short>destinationSpan<ushort?>definedLevelshort
ConvertUInt16(ReadOnlySpan<int>, Span<ushort>)
public static void ConvertUInt16(ReadOnlySpan<int> source, Span<ushort> destination)
Parameters
sourceReadOnlySpan<int>destinationSpan<ushort>
ConvertUInt8(ReadOnlySpan<int>, ReadOnlySpan<short>, Span<byte?>, short)
public static void ConvertUInt8(ReadOnlySpan<int> source, ReadOnlySpan<short> defLevels, Span<byte?> destination, short definedLevel)
Parameters
sourceReadOnlySpan<int>defLevelsReadOnlySpan<short>destinationSpan<byte?>definedLevelshort
ConvertUInt8(ReadOnlySpan<int>, Span<byte>)
public static void ConvertUInt8(ReadOnlySpan<int> source, Span<byte> destination)
Parameters
sourceReadOnlySpan<int>destinationSpan<byte>
ConvertUuid(ReadOnlySpan<FixedLenByteArray>, ReadOnlySpan<short>, Span<Guid?>, short)
public static void ConvertUuid(ReadOnlySpan<FixedLenByteArray> source, ReadOnlySpan<short> defLevels, Span<Guid?> destination, short definedLevel)
Parameters
sourceReadOnlySpan<FixedLenByteArray>defLevelsReadOnlySpan<short>destinationSpan<Guid?>definedLevelshort
ConvertUuid(ReadOnlySpan<FixedLenByteArray>, Span<Guid>)
public static void ConvertUuid(ReadOnlySpan<FixedLenByteArray> source, Span<Guid> destination)
Parameters
sourceReadOnlySpan<FixedLenByteArray>destinationSpan<Guid>
GetDirectReader<TTLogical, TTPhysical>()
public static Delegate GetDirectReader<TTLogical, TTPhysical>() where TTLogical : unmanaged where TTPhysical : unmanaged
Returns
Type Parameters
TTLogicalTTPhysical
GetNativeConverter<TTLogical, TTPhysical>()
public static Delegate GetNativeConverter<TTLogical, TTPhysical>() where TTLogical : unmanaged where TTPhysical : unmanaged
Returns
Type Parameters
TTLogicalTTPhysical
GetNullableNativeConverter<TTLogical, TTPhysical>()
public static Delegate GetNullableNativeConverter<TTLogical, TTPhysical>() where TTLogical : unmanaged where TTPhysical : unmanaged
Returns
Type Parameters
TTLogicalTTPhysical
IsCacheValid(ByteArrayReaderCache<ByteArray, string>, ByteArray, string)
public static bool IsCacheValid(ByteArrayReaderCache<ByteArray, string> byteArrayCache, ByteArray byteArray, string str)
Parameters
byteArrayCacheByteArrayReaderCache<ByteArray, string>byteArrayByteArraystrstring
Returns
ReadDirect<TPhys>(ColumnReader<TPhys>, Span<TPhys>)
public static long ReadDirect<TPhys>(ColumnReader<TPhys> r, Span<TPhys> d) where TPhys : unmanaged
Parameters
rColumnReader<TPhys>dSpan<TPhys>
Returns
Type Parameters
TPhys
ToByteArray(ByteArray)
public static byte[] ToByteArray(ByteArray byteArray)
Parameters
byteArrayByteArray
Returns
- byte[]
ToDateOnly(int)
public static DateOnly ToDateOnly(int source)
Parameters
sourceint
Returns
ToDateTimeMicros(long)
public static DateTime ToDateTimeMicros(long source)
Parameters
sourcelong
Returns
ToDateTimeMicrosTicks(long)
public static long ToDateTimeMicrosTicks(long source)
Parameters
sourcelong
Returns
ToDateTimeMillis(long)
public static DateTime ToDateTimeMillis(long source)
Parameters
sourcelong
Returns
ToDateTimeMillisTicks(long)
public static long ToDateTimeMillisTicks(long source)
Parameters
sourcelong
Returns
ToDecimal(FixedLenByteArray, decimal)
public static decimal ToDecimal(FixedLenByteArray source, decimal multiplier)
Parameters
sourceFixedLenByteArraymultiplierdecimal
Returns
ToHalf(FixedLenByteArray)
public static Half ToHalf(FixedLenByteArray source)
Parameters
sourceFixedLenByteArray
Returns
ToString(ByteArray)
public static string ToString(ByteArray byteArray)
Parameters
byteArrayByteArray
Returns
ToString(ByteArray, ByteArrayReaderCache<ByteArray, string>)
public static string ToString(ByteArray byteArray, ByteArrayReaderCache<ByteArray, string> byteArrayCache)
Parameters
byteArrayByteArraybyteArrayCacheByteArrayReaderCache<ByteArray, string>
Returns
ToTimeOnlyMicros(long)
public static TimeOnly ToTimeOnlyMicros(long source)
Parameters
sourcelong
Returns
ToTimeOnlyMillis(int)
public static TimeOnly ToTimeOnlyMillis(int source)
Parameters
sourceint
Returns
ToTimeSpanMicros(long)
public static TimeSpan ToTimeSpanMicros(long source)
Parameters
sourcelong
Returns
ToTimeSpanMillis(int)
public static TimeSpan ToTimeSpanMillis(int source)
Parameters
sourceint
Returns
ToUuid(FixedLenByteArray)
public static Guid ToUuid(FixedLenByteArray source)
Parameters
sourceFixedLenByteArray