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

Method copyFromColLayout

src/common/types/value/value.cpp:456–517  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

454}
455
456void Value::copyFromColLayout(const uint8_t* value, ValueVector* vector) {
457 switch (dataType.getPhysicalType()) {
458 case PhysicalTypeID::INT64: {
459 val.int64Val = *((int64_t*)value);
460 } break;
461 case PhysicalTypeID::INT32: {
462 val.int32Val = *((int32_t*)value);
463 } break;
464 case PhysicalTypeID::INT16: {
465 val.int16Val = *((int16_t*)value);
466 } break;
467 case PhysicalTypeID::INT8: {
468 val.int8Val = *((int8_t*)value);
469 } break;
470 case PhysicalTypeID::UINT64: {
471 val.uint64Val = *((uint64_t*)value);
472 } break;
473 case PhysicalTypeID::UINT32: {
474 val.uint32Val = *((uint32_t*)value);
475 } break;
476 case PhysicalTypeID::UINT16: {
477 val.uint16Val = *((uint16_t*)value);
478 } break;
479 case PhysicalTypeID::UINT8: {
480 val.uint8Val = *((uint8_t*)value);
481 } break;
482 case PhysicalTypeID::INT128: {
483 val.int128Val = *((int128_t*)value);
484 } break;
485 case PhysicalTypeID::BOOL: {
486 val.booleanVal = *((bool*)value);
487 } break;
488 case PhysicalTypeID::DOUBLE: {
489 val.doubleVal = *((double*)value);
490 } break;
491 case PhysicalTypeID::FLOAT: {
492 val.floatVal = *((float*)value);
493 } break;
494 case PhysicalTypeID::INTERVAL: {
495 val.intervalVal = *((interval_t*)value);
496 } break;
497 case PhysicalTypeID::STRING:
498 case PhysicalTypeID::JSON: {
499 strVal = ((string_t*)value)->getAsString();
500 } break;
501 case PhysicalTypeID::ARRAY:
502 case PhysicalTypeID::LIST: {
503 copyFromColLayoutList(*(list_entry_t*)value, vector);
504 } break;
505 case PhysicalTypeID::STRUCT: {
506 copyFromColLayoutStruct(*(struct_entry_t*)value, vector);
507 } break;
508 case PhysicalTypeID::INTERNAL_ID: {
509 val.internalIDVal = *((nodeID_t*)value);
510 } break;
511 case PhysicalTypeID::UINT128: {
512 val.uint128Val = *((uint128_t*)value);
513 } break;

Callers 5

handleKeyMethod · 0.80
fillTupleMethod · 0.80
copyFromColLayoutListMethod · 0.80

Calls 2

getAsStringMethod · 0.80
getPhysicalTypeMethod · 0.45

Tested by

no test coverage detected