@@ -83,18 +83,18 @@ pub const fn is_prime64(n: u64) -> bool {
8383 // hand-unrolled for the compiler to optimize divisions
8484 #[ rustfmt:: skip]
8585 {
86- if n % 2 == 0 { return n == 2 ; }
87- if n % 3 == 0 { return n == 3 ; }
88- if n % 5 == 0 { return n == 5 ; }
89- if n % 7 == 0 { return n == 7 ; }
90- if n % 11 == 0 { return n == 11 ; }
91- if n % 13 == 0 { return n == 13 ; }
92- if n % 17 == 0 { return n == 17 ; }
93- if n % 19 == 0 { return n == 19 ; }
94- if n % 23 == 0 { return n == 23 ; }
95- if n % 29 == 0 { return n == 29 ; }
96- if n % 31 == 0 { return n == 31 ; }
97- if n % 37 == 0 { return n == 37 ; }
86+ if n. is_multiple_of ( 2 ) { return n == 2 ; }
87+ if n. is_multiple_of ( 3 ) { return n == 3 ; }
88+ if n. is_multiple_of ( 5 ) { return n == 5 ; }
89+ if n. is_multiple_of ( 7 ) { return n == 7 ; }
90+ if n. is_multiple_of ( 11 ) { return n == 11 ; }
91+ if n. is_multiple_of ( 13 ) { return n == 13 ; }
92+ if n. is_multiple_of ( 17 ) { return n == 17 ; }
93+ if n. is_multiple_of ( 19 ) { return n == 19 ; }
94+ if n. is_multiple_of ( 23 ) { return n == 23 ; }
95+ if n. is_multiple_of ( 29 ) { return n == 29 ; }
96+ if n. is_multiple_of ( 31 ) { return n == 31 ; }
97+ if n. is_multiple_of ( 37 ) { return n == 37 ; }
9898 } ;
9999
100100 // deterministic miller rabin test, works for any n < 2^64
@@ -104,7 +104,7 @@ pub const fn is_prime64(n: u64) -> bool {
104104 let mut s = 0 ;
105105 let mut d = n - 1 ;
106106
107- while d % 2 == 0 {
107+ while d. is_multiple_of ( 2 ) {
108108 s += 1 ;
109109 d /= 2 ;
110110 }
0 commit comments