decodeColumnarFrame method
Decodes a complete protocol message frame for columnar streaming.
Implementation
TypedColumnarResult decodeColumnarFrame(
Uint8List frame, {
bool lazyStrings = false,
}) {
if (BinaryProtocolParser.isColumnarV2Message(frame)) {
return BinaryProtocolParser.parseColumnarToTyped(
frame,
lazyStrings: lazyStrings,
);
}
final rowBuffer = BinaryProtocolParser.parse(
frame,
lazyStrings: lazyStrings,
);
return toTypedColumnarFromWire(
columnNames: rowBuffer.columnNames,
odbcDiscriminants: [
for (final col in rowBuffer.columns) col.odbcType,
],
rows: rowBuffer.rows,
);
}