Class ColumnDescriptor
- Namespace
- ParquetSharp
- Assembly
- ParquetSharp.dll
The ColumnDescriptor encapsulates information necessary to interpret primitive column data in the context of a particular schema. We have to examine the node structure of a column's path to the root in the schema tree to be able to reassemble the nested structure from the repetition and definition levels.
public sealed class ColumnDescriptor
- Inheritance
-
ColumnDescriptor
- Inherited Members
Properties
ColumnOrder
public ColumnOrder ColumnOrder { get; }
Property Value
LogicalType
public LogicalType LogicalType { get; }
Property Value
MaxDefinitionLevel
public short MaxDefinitionLevel { get; }
Property Value
MaxRepetitionLevel
public short MaxRepetitionLevel { get; }
Property Value
Name
public string Name { get; }
Property Value
Path
public ColumnPath Path { get; }
Property Value
PhysicalType
public PhysicalType PhysicalType { get; }
Property Value
SchemaNode
public Node SchemaNode { get; }
Property Value
SortOrder
public SortOrder SortOrder { get; }
Property Value
TypeLength
public int TypeLength { get; }
Property Value
TypePrecision
public int TypePrecision { get; }
Property Value
TypeScale
public int TypeScale { get; }
Property Value
Methods
Apply<TReturn>(LogicalTypeFactory, IColumnDescriptorVisitor<TReturn>)
public TReturn Apply<TReturn>(LogicalTypeFactory typeFactory, IColumnDescriptorVisitor<TReturn> visitor)
Parameters
typeFactoryLogicalTypeFactoryvisitorIColumnDescriptorVisitor<TReturn>
Returns
- TReturn
Type Parameters
TReturn
Apply<TReturn>(LogicalTypeFactory, Type?, IColumnDescriptorVisitor<TReturn>)
public TReturn Apply<TReturn>(LogicalTypeFactory typeFactory, Type? columnLogicalTypeOverride, IColumnDescriptorVisitor<TReturn> visitor)
Parameters
typeFactoryLogicalTypeFactorycolumnLogicalTypeOverrideTypevisitorIColumnDescriptorVisitor<TReturn>
Returns
- TReturn
Type Parameters
TReturn
Apply<TReturn>(LogicalTypeFactory, Type?, bool, IColumnDescriptorVisitor<TReturn>)
public TReturn Apply<TReturn>(LogicalTypeFactory typeFactory, Type? columnLogicalTypeOverride, bool useNesting, IColumnDescriptorVisitor<TReturn> visitor)
Parameters
typeFactoryLogicalTypeFactorycolumnLogicalTypeOverrideTypeuseNestingboolvisitorIColumnDescriptorVisitor<TReturn>
Returns
- TReturn
Type Parameters
TReturn
GetSystemTypes(LogicalTypeFactory, Type?)
public (Type physicalType, Type logicalType, Type elementType) GetSystemTypes(LogicalTypeFactory typeFactory, Type? columnLogicalTypeOverride)
Parameters
typeFactoryLogicalTypeFactorycolumnLogicalTypeOverrideType
Returns
GetSystemTypes(LogicalTypeFactory, Type?, bool)
Get the System.Type instances that represent this column. PhysicalType is the actual type on disk (e.g. ByteArray). LogicalType is the most nested logical type (e.g. string). ElementType is the type represented by the column (e.g. string[][][]).
public (Type physicalType, Type logicalType, Type elementType) GetSystemTypes(LogicalTypeFactory typeFactory, Type? columnLogicalTypeOverride, bool useNesting)
Parameters
typeFactoryLogicalTypeFactoryType factory to get logical types
columnLogicalTypeOverrideTypeOverrides the default logical type to use
useNestingboolControls whether schema nodes tested in groups should result in a corresponding Nested type