Commit bb7febd
Further simplifications and correctness fixes in decode hot path
- huffman: fix crash when inner loop reaches last code (bounds check was
after array access); remove dead commented-out method; nest early-return
in buildCaches into if block; use ?? -1 instead of ! for bitCodeToValue
lookup; remove spurious inner braces in _decode
- decodeRecord: fold lengthOnRef computation into decodeReadFeatures return
value, eliminating the second pass over read features; fix push(...spread)
in getAllMatedRecords; hoist duplicate `content` variable in bind(); extract
decodeQualityScores/decodeReadBases helpers; use Uint8Array+decodeLatin1
in decodeReadBases fallback; remove dead RFFn alias; fix stale comment
- index.ts: inline ByteArrayStopCodec decode in bind() fast path; deduplicate
tag decoder subarray body via readTagLen closure; fix indentation
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>1 parent 35bc443 commit bb7febd
3 files changed
Lines changed: 61 additions & 109 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
152 | 152 | | |
153 | 153 | | |
154 | 154 | | |
155 | | - | |
156 | | - | |
157 | | - | |
158 | | - | |
159 | | - | |
160 | | - | |
161 | | - | |
162 | | - | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
163 | 161 | | |
164 | 162 | | |
165 | 163 | | |
| |||
172 | 170 | | |
173 | 171 | | |
174 | 172 | | |
175 | | - | |
176 | | - | |
177 | | - | |
178 | | - | |
179 | 173 | | |
180 | 174 | | |
181 | 175 | | |
| |||
194 | 188 | | |
195 | 189 | | |
196 | 190 | | |
197 | | - | |
198 | | - | |
199 | | - | |
200 | | - | |
201 | | - | |
202 | | - | |
203 | | - | |
204 | | - | |
205 | | - | |
206 | | - | |
207 | | - | |
208 | | - | |
209 | | - | |
210 | | - | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
| 201 | + | |
211 | 202 | | |
212 | 203 | | |
213 | 204 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
52 | 52 | | |
53 | 53 | | |
54 | 54 | | |
55 | | - | |
56 | | - | |
57 | | - | |
58 | | - | |
59 | | - | |
60 | | - | |
61 | | - | |
62 | | - | |
63 | | - | |
64 | | - | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
65 | 58 | | |
66 | 59 | | |
67 | 60 | | |
| |||
148 | 141 | | |
149 | 142 | | |
150 | 143 | | |
151 | | - | |
152 | | - | |
153 | | - | |
154 | | - | |
155 | | - | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
156 | 149 | | |
157 | | - | |
158 | | - | |
| 150 | + | |
159 | 151 | | |
160 | 152 | | |
161 | 153 | | |
162 | 154 | | |
163 | 155 | | |
164 | 156 | | |
165 | 157 | | |
166 | | - | |
167 | | - | |
168 | | - | |
169 | | - | |
| 158 | + | |
170 | 159 | | |
171 | 160 | | |
172 | 161 | | |
| |||
186 | 175 | | |
187 | 176 | | |
188 | 177 | | |
189 | | - | |
190 | | - | |
191 | | - | |
192 | | - | |
193 | | - | |
194 | | - | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
195 | 182 | | |
196 | 183 | | |
197 | 184 | | |
| |||
227 | 214 | | |
228 | 215 | | |
229 | 216 | | |
230 | | - | |
| 217 | + | |
231 | 218 | | |
232 | 219 | | |
233 | 220 | | |
| |||
260 | 247 | | |
261 | 248 | | |
262 | 249 | | |
263 | | - | |
| 250 | + | |
264 | 251 | | |
265 | | - | |
| 252 | + | |
266 | 253 | | |
267 | | - | |
| 254 | + | |
268 | 255 | | |
269 | 256 | | |
270 | 257 | | |
| |||
304 | 291 | | |
305 | 292 | | |
306 | 293 | | |
307 | | - | |
| 294 | + | |
308 | 295 | | |
309 | 296 | | |
310 | 297 | | |
| |||
393 | 380 | | |
394 | 381 | | |
395 | 382 | | |
| 383 | + | |
396 | 384 | | |
397 | | - | |
| 385 | + | |
398 | 386 | | |
399 | 387 | | |
400 | 388 | | |
401 | 389 | | |
402 | 390 | | |
403 | | - | |
404 | | - | |
405 | | - | |
406 | | - | |
407 | | - | |
408 | | - | |
409 | | - | |
410 | | - | |
411 | | - | |
412 | | - | |
413 | | - | |
414 | | - | |
415 | | - | |
416 | | - | |
417 | | - | |
| 391 | + | |
| 392 | + | |
418 | 393 | | |
419 | 394 | | |
420 | 395 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
70 | 70 | | |
71 | 71 | | |
72 | 72 | | |
73 | | - | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
74 | 76 | | |
75 | 77 | | |
76 | 78 | | |
| |||
549 | 551 | | |
550 | 552 | | |
551 | 553 | | |
| 554 | + | |
552 | 555 | | |
553 | | - | |
554 | 556 | | |
555 | 557 | | |
556 | | - | |
557 | 558 | | |
558 | 559 | | |
559 | 560 | | |
| |||
637 | 638 | | |
638 | 639 | | |
639 | 640 | | |
640 | | - | |
641 | | - | |
642 | | - | |
643 | | - | |
644 | | - | |
645 | | - | |
646 | | - | |
647 | | - | |
648 | | - | |
649 | | - | |
650 | | - | |
651 | | - | |
652 | | - | |
653 | | - | |
654 | | - | |
| 641 | + | |
| 642 | + | |
| 643 | + | |
| 644 | + | |
| 645 | + | |
| 646 | + | |
| 647 | + | |
| 648 | + | |
| 649 | + | |
655 | 650 | | |
656 | | - | |
657 | | - | |
658 | | - | |
659 | | - | |
660 | | - | |
661 | | - | |
662 | | - | |
663 | | - | |
664 | | - | |
665 | | - | |
666 | | - | |
667 | | - | |
668 | | - | |
669 | | - | |
670 | | - | |
671 | | - | |
672 | | - | |
| 651 | + | |
| 652 | + | |
| 653 | + | |
| 654 | + | |
| 655 | + | |
| 656 | + | |
673 | 657 | | |
| 658 | + | |
| 659 | + | |
674 | 660 | | |
675 | 661 | | |
676 | 662 | | |
| |||
0 commit comments