github.com/balzaczyy/golucene@v0.0.0-20151210033525-d0be9ee89713/core/util/packed/bulkOperation22.go (about) 1 // This file has been automatically generated, DO NOT EDIT 2 3 package packed 4 5 // Efficient sequential read/write of packed integers. 6 type BulkOperationPacked22 struct { 7 *BulkOperationPacked 8 } 9 10 func newBulkOperationPacked22() BulkOperation { 11 return &BulkOperationPacked22{newBulkOperationPacked(22)} 12 } 13 14 func (op *BulkOperationPacked22) decodeLongToInt(blocks []int64, values []int32, iterations int) { 15 blocksOffset, valuesOffset := 0, 0 16 for i := 0; i < iterations; i ++ { 17 block0 := blocks[blocksOffset]; blocksOffset++ 18 values[valuesOffset] = int32(int64(uint64(block0) >> 42)); valuesOffset++ 19 values[valuesOffset] = int32(int64(uint64(block0) >> 20) & 4194303); valuesOffset++ 20 block1 := blocks[blocksOffset]; blocksOffset++ 21 values[valuesOffset] = int32(((block0 & 1048575) << 2) | (int64(uint64(block1) >> 62))); valuesOffset++ 22 values[valuesOffset] = int32(int64(uint64(block1) >> 40) & 4194303); valuesOffset++ 23 values[valuesOffset] = int32(int64(uint64(block1) >> 18) & 4194303); valuesOffset++ 24 block2 := blocks[blocksOffset]; blocksOffset++ 25 values[valuesOffset] = int32(((block1 & 262143) << 4) | (int64(uint64(block2) >> 60))); valuesOffset++ 26 values[valuesOffset] = int32(int64(uint64(block2) >> 38) & 4194303); valuesOffset++ 27 values[valuesOffset] = int32(int64(uint64(block2) >> 16) & 4194303); valuesOffset++ 28 block3 := blocks[blocksOffset]; blocksOffset++ 29 values[valuesOffset] = int32(((block2 & 65535) << 6) | (int64(uint64(block3) >> 58))); valuesOffset++ 30 values[valuesOffset] = int32(int64(uint64(block3) >> 36) & 4194303); valuesOffset++ 31 values[valuesOffset] = int32(int64(uint64(block3) >> 14) & 4194303); valuesOffset++ 32 block4 := blocks[blocksOffset]; blocksOffset++ 33 values[valuesOffset] = int32(((block3 & 16383) << 8) | (int64(uint64(block4) >> 56))); valuesOffset++ 34 values[valuesOffset] = int32(int64(uint64(block4) >> 34) & 4194303); valuesOffset++ 35 values[valuesOffset] = int32(int64(uint64(block4) >> 12) & 4194303); valuesOffset++ 36 block5 := blocks[blocksOffset]; blocksOffset++ 37 values[valuesOffset] = int32(((block4 & 4095) << 10) | (int64(uint64(block5) >> 54))); valuesOffset++ 38 values[valuesOffset] = int32(int64(uint64(block5) >> 32) & 4194303); valuesOffset++ 39 values[valuesOffset] = int32(int64(uint64(block5) >> 10) & 4194303); valuesOffset++ 40 block6 := blocks[blocksOffset]; blocksOffset++ 41 values[valuesOffset] = int32(((block5 & 1023) << 12) | (int64(uint64(block6) >> 52))); valuesOffset++ 42 values[valuesOffset] = int32(int64(uint64(block6) >> 30) & 4194303); valuesOffset++ 43 values[valuesOffset] = int32(int64(uint64(block6) >> 8) & 4194303); valuesOffset++ 44 block7 := blocks[blocksOffset]; blocksOffset++ 45 values[valuesOffset] = int32(((block6 & 255) << 14) | (int64(uint64(block7) >> 50))); valuesOffset++ 46 values[valuesOffset] = int32(int64(uint64(block7) >> 28) & 4194303); valuesOffset++ 47 values[valuesOffset] = int32(int64(uint64(block7) >> 6) & 4194303); valuesOffset++ 48 block8 := blocks[blocksOffset]; blocksOffset++ 49 values[valuesOffset] = int32(((block7 & 63) << 16) | (int64(uint64(block8) >> 48))); valuesOffset++ 50 values[valuesOffset] = int32(int64(uint64(block8) >> 26) & 4194303); valuesOffset++ 51 values[valuesOffset] = int32(int64(uint64(block8) >> 4) & 4194303); valuesOffset++ 52 block9 := blocks[blocksOffset]; blocksOffset++ 53 values[valuesOffset] = int32(((block8 & 15) << 18) | (int64(uint64(block9) >> 46))); valuesOffset++ 54 values[valuesOffset] = int32(int64(uint64(block9) >> 24) & 4194303); valuesOffset++ 55 values[valuesOffset] = int32(int64(uint64(block9) >> 2) & 4194303); valuesOffset++ 56 block10 := blocks[blocksOffset]; blocksOffset++ 57 values[valuesOffset] = int32(((block9 & 3) << 20) | (int64(uint64(block10) >> 44))); valuesOffset++ 58 values[valuesOffset] = int32(int64(uint64(block10) >> 22) & 4194303); valuesOffset++ 59 values[valuesOffset] = int32(block10 & 4194303); valuesOffset++ 60 } 61 } 62 63 func (op *BulkOperationPacked22) decodeByteToInt(blocks []byte, values []int32, iterations int) { 64 blocksOffset, valuesOffset := 0, 0 65 for i := 0; i < iterations; i ++ { 66 byte0 := blocks[blocksOffset] 67 blocksOffset++ 68 byte1 := blocks[blocksOffset] 69 blocksOffset++ 70 byte2 := blocks[blocksOffset] 71 blocksOffset++ 72 values[valuesOffset] = int32((int64(byte0) << 14) | (int64(byte1) << 6) | int64(uint8(byte2) >> 2)) 73 valuesOffset++ 74 byte3 := blocks[blocksOffset] 75 blocksOffset++ 76 byte4 := blocks[blocksOffset] 77 blocksOffset++ 78 byte5 := blocks[blocksOffset] 79 blocksOffset++ 80 values[valuesOffset] = int32((int64(byte2 & 3) << 20) | (int64(byte3) << 12) | (int64(byte4) << 4) | int64(uint8(byte5) >> 4)) 81 valuesOffset++ 82 byte6 := blocks[blocksOffset] 83 blocksOffset++ 84 byte7 := blocks[blocksOffset] 85 blocksOffset++ 86 byte8 := blocks[blocksOffset] 87 blocksOffset++ 88 values[valuesOffset] = int32((int64(byte5 & 15) << 18) | (int64(byte6) << 10) | (int64(byte7) << 2) | int64(uint8(byte8) >> 6)) 89 valuesOffset++ 90 byte9 := blocks[blocksOffset] 91 blocksOffset++ 92 byte10 := blocks[blocksOffset] 93 blocksOffset++ 94 values[valuesOffset] = int32((int64(byte8 & 63) << 16) | (int64(byte9) << 8) | int64(byte10)) 95 valuesOffset++ 96 } 97 } 98 func (op *BulkOperationPacked22) decodeLongToLong(blocks []int64, values []int64, iterations int) { 99 blocksOffset, valuesOffset := 0, 0 100 for i := 0; i < iterations; i ++ { 101 block0 := blocks[blocksOffset]; blocksOffset++ 102 values[valuesOffset] = int64(uint64(block0) >> 42); valuesOffset++ 103 values[valuesOffset] = int64(uint64(block0) >> 20) & 4194303; valuesOffset++ 104 block1 := blocks[blocksOffset]; blocksOffset++ 105 values[valuesOffset] = ((block0 & 1048575) << 2) | (int64(uint64(block1) >> 62)); valuesOffset++ 106 values[valuesOffset] = int64(uint64(block1) >> 40) & 4194303; valuesOffset++ 107 values[valuesOffset] = int64(uint64(block1) >> 18) & 4194303; valuesOffset++ 108 block2 := blocks[blocksOffset]; blocksOffset++ 109 values[valuesOffset] = ((block1 & 262143) << 4) | (int64(uint64(block2) >> 60)); valuesOffset++ 110 values[valuesOffset] = int64(uint64(block2) >> 38) & 4194303; valuesOffset++ 111 values[valuesOffset] = int64(uint64(block2) >> 16) & 4194303; valuesOffset++ 112 block3 := blocks[blocksOffset]; blocksOffset++ 113 values[valuesOffset] = ((block2 & 65535) << 6) | (int64(uint64(block3) >> 58)); valuesOffset++ 114 values[valuesOffset] = int64(uint64(block3) >> 36) & 4194303; valuesOffset++ 115 values[valuesOffset] = int64(uint64(block3) >> 14) & 4194303; valuesOffset++ 116 block4 := blocks[blocksOffset]; blocksOffset++ 117 values[valuesOffset] = ((block3 & 16383) << 8) | (int64(uint64(block4) >> 56)); valuesOffset++ 118 values[valuesOffset] = int64(uint64(block4) >> 34) & 4194303; valuesOffset++ 119 values[valuesOffset] = int64(uint64(block4) >> 12) & 4194303; valuesOffset++ 120 block5 := blocks[blocksOffset]; blocksOffset++ 121 values[valuesOffset] = ((block4 & 4095) << 10) | (int64(uint64(block5) >> 54)); valuesOffset++ 122 values[valuesOffset] = int64(uint64(block5) >> 32) & 4194303; valuesOffset++ 123 values[valuesOffset] = int64(uint64(block5) >> 10) & 4194303; valuesOffset++ 124 block6 := blocks[blocksOffset]; blocksOffset++ 125 values[valuesOffset] = ((block5 & 1023) << 12) | (int64(uint64(block6) >> 52)); valuesOffset++ 126 values[valuesOffset] = int64(uint64(block6) >> 30) & 4194303; valuesOffset++ 127 values[valuesOffset] = int64(uint64(block6) >> 8) & 4194303; valuesOffset++ 128 block7 := blocks[blocksOffset]; blocksOffset++ 129 values[valuesOffset] = ((block6 & 255) << 14) | (int64(uint64(block7) >> 50)); valuesOffset++ 130 values[valuesOffset] = int64(uint64(block7) >> 28) & 4194303; valuesOffset++ 131 values[valuesOffset] = int64(uint64(block7) >> 6) & 4194303; valuesOffset++ 132 block8 := blocks[blocksOffset]; blocksOffset++ 133 values[valuesOffset] = ((block7 & 63) << 16) | (int64(uint64(block8) >> 48)); valuesOffset++ 134 values[valuesOffset] = int64(uint64(block8) >> 26) & 4194303; valuesOffset++ 135 values[valuesOffset] = int64(uint64(block8) >> 4) & 4194303; valuesOffset++ 136 block9 := blocks[blocksOffset]; blocksOffset++ 137 values[valuesOffset] = ((block8 & 15) << 18) | (int64(uint64(block9) >> 46)); valuesOffset++ 138 values[valuesOffset] = int64(uint64(block9) >> 24) & 4194303; valuesOffset++ 139 values[valuesOffset] = int64(uint64(block9) >> 2) & 4194303; valuesOffset++ 140 block10 := blocks[blocksOffset]; blocksOffset++ 141 values[valuesOffset] = ((block9 & 3) << 20) | (int64(uint64(block10) >> 44)); valuesOffset++ 142 values[valuesOffset] = int64(uint64(block10) >> 22) & 4194303; valuesOffset++ 143 values[valuesOffset] = block10 & 4194303; valuesOffset++ 144 } 145 } 146 147 func (op *BulkOperationPacked22) decodeByteToLong(blocks []byte, values []int64, iterations int) { 148 blocksOffset, valuesOffset := 0, 0 149 for i := 0; i < iterations; i ++ { 150 byte0 := blocks[blocksOffset] 151 blocksOffset++ 152 byte1 := blocks[blocksOffset] 153 blocksOffset++ 154 byte2 := blocks[blocksOffset] 155 blocksOffset++ 156 values[valuesOffset] = int64((int64(byte0) << 14) | (int64(byte1) << 6) | int64(uint8(byte2) >> 2)) 157 valuesOffset++ 158 byte3 := blocks[blocksOffset] 159 blocksOffset++ 160 byte4 := blocks[blocksOffset] 161 blocksOffset++ 162 byte5 := blocks[blocksOffset] 163 blocksOffset++ 164 values[valuesOffset] = int64((int64(byte2 & 3) << 20) | (int64(byte3) << 12) | (int64(byte4) << 4) | int64(uint8(byte5) >> 4)) 165 valuesOffset++ 166 byte6 := blocks[blocksOffset] 167 blocksOffset++ 168 byte7 := blocks[blocksOffset] 169 blocksOffset++ 170 byte8 := blocks[blocksOffset] 171 blocksOffset++ 172 values[valuesOffset] = int64((int64(byte5 & 15) << 18) | (int64(byte6) << 10) | (int64(byte7) << 2) | int64(uint8(byte8) >> 6)) 173 valuesOffset++ 174 byte9 := blocks[blocksOffset] 175 blocksOffset++ 176 byte10 := blocks[blocksOffset] 177 blocksOffset++ 178 values[valuesOffset] = int64((int64(byte8 & 63) << 16) | (int64(byte9) << 8) | int64(byte10)) 179 valuesOffset++ 180 } 181 }