MCPcopy Create free account
hub / github.com/LadybugDB/ladybug / copyFromRowLayout

Method copyFromRowLayout

src/common/types/value/value.cpp:349–454  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

347}
348
349void Value::copyFromRowLayout(const uint8_t* value) {
350 switch (dataType.getLogicalTypeID()) {
351 case LogicalTypeID::SERIAL:
352 case LogicalTypeID::TIMESTAMP_NS:
353 case LogicalTypeID::TIMESTAMP_MS:
354 case LogicalTypeID::TIMESTAMP_SEC:
355 case LogicalTypeID::TIMESTAMP_TZ:
356 case LogicalTypeID::TIMESTAMP:
357 case LogicalTypeID::INT64: {
358 val.int64Val = *((int64_t*)value);
359 } break;
360 case LogicalTypeID::DATE:
361 case LogicalTypeID::INT32: {
362 val.int32Val = *((int32_t*)value);
363 } break;
364 case LogicalTypeID::INT16: {
365 val.int16Val = *((int16_t*)value);
366 } break;
367 case LogicalTypeID::INT8: {
368 val.int8Val = *((int8_t*)value);
369 } break;
370 case LogicalTypeID::UINT64: {
371 val.uint64Val = *((uint64_t*)value);
372 } break;
373 case LogicalTypeID::UINT32: {
374 val.uint32Val = *((uint32_t*)value);
375 } break;
376 case LogicalTypeID::UINT16: {
377 val.uint16Val = *((uint16_t*)value);
378 } break;
379 case LogicalTypeID::UINT8: {
380 val.uint8Val = *((uint8_t*)value);
381 } break;
382 case LogicalTypeID::INT128: {
383 val.int128Val = *((int128_t*)value);
384 } break;
385 case LogicalTypeID::BOOL: {
386 val.booleanVal = *((bool*)value);
387 } break;
388 case LogicalTypeID::DOUBLE: {
389 val.doubleVal = *((double*)value);
390 } break;
391 case LogicalTypeID::FLOAT: {
392 val.floatVal = *((float*)value);
393 } break;
394 case LogicalTypeID::DECIMAL: {
395 switch (dataType.getPhysicalType()) {
396 case PhysicalTypeID::INT16:
397 val.int16Val = (*(int16_t*)value);
398 break;
399 case PhysicalTypeID::INT32:
400 val.int32Val = (*(int32_t*)value);
401 break;
402 case PhysicalTypeID::INT64:
403 val.int64Val = (*(int64_t*)value);
404 break;
405 case PhysicalTypeID::INT128:
406 val.int128Val = (*(int128_t*)value);

Callers 5

copyFromRowLayoutListMethod · 0.80
copyFromUnionMethod · 0.80

Calls 5

getChildTypeFunction · 0.85
getLogicalTypeIDMethod · 0.80
getAsStringMethod · 0.80
toStringFunction · 0.50
getPhysicalTypeMethod · 0.45

Tested by

no test coverage detected