Class ShredResult
- Namespace
- Apache.Arrow.Operations.Shredding
- Assembly
- Apache.Arrow.Operations.dll
The result of shredding a single variant value: a (value, typed_value) pair.
Follows the Parquet variant shredding spec encoding matrix:
- Both null → missing (only valid for object sub-fields)
- value non-null, typed_value null → unshredded (value in binary)
- value null, typed_value non-null → fully shredded into typed column
- Both non-null → partially shredded object (typed_value has shredded fields, value has residual)
public sealed class ShredResult
- Inheritance
-
ShredResult
- Inherited Members
Constructors
ShredResult(byte[], object)
Creates a shred result.
public ShredResult(byte[] value, object typedValue)
Parameters
Fields
Missing
A missing result (both null).
public static readonly ShredResult Missing
Field Value
Properties
IsMissing
True when both Value and TypedValue are null, indicating the field is missing (only valid for object sub-fields).
public bool IsMissing { get; }
Property Value
TypedValue
The typed value extracted according to the schema. The runtime type depends on the TypedValueType:
- Primitives: the corresponding CLR type (bool, int, long, double, string, etc.)
- Object: ShredObjectResult
- Array: ShredArrayResult
Null when the value does not match the schema type (falls back to binary).
public object TypedValue { get; }
Property Value
Value
The residual variant value bytes. These reference the column-level metadata returned by Shred(IEnumerable<VariantValue>, ShredSchema); they are NOT self-contained. Non-null when the value (or part of it) could not be shredded into the typed column. For partially shredded objects this contains only the unshredded fields.
public byte[] Value { get; }
Property Value
- byte[]