@@ -8,11 +8,11 @@ use std::{
88
99use axpoll:: PollSet ;
1010
11- struct Counter ( Arc < AtomicUsize > ) ;
11+ struct Counter ( AtomicUsize ) ;
1212
1313impl Counter {
14- fn new ( ) -> Self {
15- Self ( Arc :: new ( AtomicUsize :: new ( 0 ) ) )
14+ fn new ( ) -> Arc < Self > {
15+ Arc :: new ( Self ( AtomicUsize :: new ( 0 ) ) )
1616 }
1717
1818 fn count ( & self ) -> usize {
@@ -34,16 +34,11 @@ impl Wake for Counter {
3434 }
3535}
3636
37- fn make_waker ( counter : Arc < AtomicUsize > ) -> Waker {
38- let wrapped = Arc :: new ( Counter ( counter. clone ( ) ) ) ;
39- Waker :: from ( wrapped)
40- }
41-
4237#[ test]
4338fn register_and_wake ( ) {
4439 let ps = PollSet :: new ( ) ;
4540 let counter = Counter :: new ( ) ;
46- let w = make_waker ( counter. 0 . clone ( ) ) ;
41+ let w = Waker :: from ( counter. clone ( ) ) ;
4742 ps. register ( & w) ;
4843 assert_eq ! ( ps. wake( ) , 1 ) ;
4944 assert_eq ! ( counter. count( ) , 1 ) ;
@@ -60,7 +55,7 @@ fn full_capacity() {
6055 let ps = PollSet :: new ( ) ;
6156 let counter = Counter :: new ( ) ;
6257 for _ in 0 ..64 {
63- let w = make_waker ( counter. 0 . clone ( ) ) ;
58+ let w = Waker :: from ( counter. clone ( ) ) ;
6459 let cx = Context :: from_waker ( & w) ;
6560 ps. register ( cx. waker ( ) ) ;
6661 }
@@ -74,7 +69,7 @@ fn overwrite() {
7469 let ps = PollSet :: new ( ) ;
7570 let counters = ( 0 ..65 ) . map ( |_| Counter :: new ( ) ) . collect :: < Vec < _ > > ( ) ;
7671 for c in & counters {
77- let w = make_waker ( c . 0 . clone ( ) ) ;
72+ let w = Waker :: from ( c . clone ( ) ) ;
7873 let cx = Context :: from_waker ( & w) ;
7974 ps. register ( cx. waker ( ) ) ;
8075 }
@@ -88,7 +83,7 @@ fn drop_wakes() {
8883 let ps = PollSet :: new ( ) ;
8984 let counters = Counter :: new ( ) ;
9085 for _ in 0 ..10 {
91- let w = make_waker ( counters. 0 . clone ( ) ) ;
86+ let w = Waker :: from ( counters. clone ( ) ) ;
9287 let cx = Context :: from_waker ( & w) ;
9388 ps. register ( cx. waker ( ) ) ;
9489 }
0 commit comments