| 534 | } |
| 535 | |
| 536 | void BinMapper::CopyTo(char * buffer) const { |
| 537 | std::memcpy(buffer, &num_bin_, sizeof(num_bin_)); |
| 538 | buffer += sizeof(num_bin_); |
| 539 | std::memcpy(buffer, &missing_type_, sizeof(missing_type_)); |
| 540 | buffer += sizeof(missing_type_); |
| 541 | std::memcpy(buffer, &is_trivial_, sizeof(is_trivial_)); |
| 542 | buffer += sizeof(is_trivial_); |
| 543 | std::memcpy(buffer, &sparse_rate_, sizeof(sparse_rate_)); |
| 544 | buffer += sizeof(sparse_rate_); |
| 545 | std::memcpy(buffer, &bin_type_, sizeof(bin_type_)); |
| 546 | buffer += sizeof(bin_type_); |
| 547 | std::memcpy(buffer, &min_val_, sizeof(min_val_)); |
| 548 | buffer += sizeof(min_val_); |
| 549 | std::memcpy(buffer, &max_val_, sizeof(max_val_)); |
| 550 | buffer += sizeof(max_val_); |
| 551 | std::memcpy(buffer, &default_bin_, sizeof(default_bin_)); |
| 552 | buffer += sizeof(default_bin_); |
| 553 | if (bin_type_ == BinType::NumericalBin) { |
| 554 | std::memcpy(buffer, bin_upper_bound_.data(), num_bin_ * sizeof(double)); |
| 555 | } else { |
| 556 | std::memcpy(buffer, bin_2_categorical_.data(), num_bin_ * sizeof(int)); |
| 557 | } |
| 558 | } |
| 559 | |
| 560 | void BinMapper::CopyFrom(const char * buffer) { |
| 561 | std::memcpy(&num_bin_, buffer, sizeof(num_bin_)); |
no test coverage detected