Advertisement
Guest User

Untitled

a guest
Nov 1st, 2014
162
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.80 KB | None | 0 0
  1. start = this->is_negative = input[0] == '-';
  2.     len = current_bit = 0;
  3.  
  4.     Block *current_block = create_new_block(current_alloc_size);
  5.     int64_t *current_elements = current_block->get_bits_array();
  6.     int64_t current_element = 0;
  7.     uint32_t BITS_PER_ELEMENT = sizeof(uint64_t) * Architecture::PlatformChecks::bits_per_byte(); // should move to header
  8.     while (start < input_len - 1 || input[input_len - 1] != '0') {
  9.         if (current_bit > BITS_PER_ELEMENT) {
  10.             current_bit = 0;
  11.             if (current_element == current_alloc_size) {
  12.                 blocks.push_back(*current_block);
  13.                 current_alloc_size = current_alloc_size << 1;
  14.                 current_block = create_new_block(current_alloc_size);
  15.                 current_elements = current_block->get_bits_array();
  16.                 current_element = 0;
  17.             }
  18.             else {
  19.                 ++len;
  20.                 ++current_element;
  21.             }
  22.         }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement