Guest User

Untitled

a guest
Jun 25th, 2018
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.79 KB | None | 0 0
  1. fn main() {
  2. for dist_code in 0..=29 {
  3. let bits: u16 = match dist_code {
  4. 0...3 => 0,
  5. 4...5 => 1,
  6. 6...7 => 2,
  7. 8...9 => 3,
  8. 10...11 => 4,
  9. 12...13 => 5,
  10. 14...15 => 6,
  11. 16...17 => 7,
  12. 18...19 => 8,
  13. 20...21 => 9,
  14. 22...23 => 10,
  15. 24...25 => 11,
  16. 26...27 => 12,
  17. 28...29 => 13,
  18. _ => panic!("bad dist code"),
  19. };
  20. let dist = 1 + if bits == 0 { 0 } else { // new_base
  21. 2 << bits
  22. } + ((dist_code as u16 - if bits == 0 { 0 } else { // old_base
  23. bits * 2 + 2
  24. }) << bits);
  25. println!("{}", dist);
  26. }
  27. }
Add Comment
Please, Sign In to add comment