@@ -86,15 +86,15 @@ pub struct AtomicBool {
86
86
unsafe impl Sync for AtomicBool { }
87
87
88
88
/// A signed integer type which can be safely shared between threads.
89
- #[ stable ]
89
+ #[ unstable = "awaiting int/uint conventions, may be renamed" ]
90
90
pub struct AtomicInt {
91
91
v : UnsafeCell < int > ,
92
92
}
93
93
94
94
unsafe impl Sync for AtomicInt { }
95
95
96
96
/// An unsigned integer type which can be safely shared between threads.
97
- #[ stable ]
97
+ #[ unstable = "awaiting int/uint conventions, may be renamed" ]
98
98
pub struct AtomicUint {
99
99
v : UnsafeCell < uint > ,
100
100
}
@@ -150,11 +150,11 @@ pub enum Ordering {
150
150
pub const ATOMIC_BOOL_INIT : AtomicBool =
151
151
AtomicBool { v : UnsafeCell { value : 0 } } ;
152
152
/// An `AtomicInt` initialized to `0`.
153
- #[ stable ]
153
+ #[ unstable = "awaiting int/uint conventions, may be renamed" ]
154
154
pub const ATOMIC_INT_INIT : AtomicInt =
155
155
AtomicInt { v : UnsafeCell { value : 0 } } ;
156
156
/// An `AtomicUint` initialized to `0`.
157
- #[ stable ]
157
+ #[ unstable = "awaiting int/uint conventions, may be renamed" ]
158
158
pub const ATOMIC_UINT_INIT : AtomicUint =
159
159
AtomicUint { v : UnsafeCell { value : 0 , } } ;
160
160
@@ -403,6 +403,7 @@ impl AtomicBool {
403
403
}
404
404
}
405
405
406
+ #[ unstable = "awaiting int/uint conventions, types may change" ]
406
407
impl AtomicInt {
407
408
/// Creates a new `AtomicInt`.
408
409
///
@@ -414,7 +415,6 @@ impl AtomicInt {
414
415
/// let atomic_forty_two = AtomicInt::new(42);
415
416
/// ```
416
417
#[ inline]
417
- #[ stable]
418
418
pub fn new ( v : int ) -> AtomicInt {
419
419
AtomicInt { v : UnsafeCell :: new ( v) }
420
420
}
@@ -437,7 +437,6 @@ impl AtomicInt {
437
437
/// let value = some_int.load(Ordering::Relaxed);
438
438
/// ```
439
439
#[ inline]
440
- #[ stable]
441
440
pub fn load ( & self , order : Ordering ) -> int {
442
441
unsafe { atomic_load ( self . v . get ( ) as * const int , order) }
443
442
}
@@ -460,7 +459,6 @@ impl AtomicInt {
460
459
///
461
460
/// Panics if `order` is `Acquire` or `AcqRel`.
462
461
#[ inline]
463
- #[ stable]
464
462
pub fn store ( & self , val : int , order : Ordering ) {
465
463
unsafe { atomic_store ( self . v . get ( ) , val, order) ; }
466
464
}
@@ -479,7 +477,6 @@ impl AtomicInt {
479
477
/// let value = some_int.swap(10, Ordering::Relaxed);
480
478
/// ```
481
479
#[ inline]
482
- #[ stable]
483
480
pub fn swap ( & self , val : int , order : Ordering ) -> int {
484
481
unsafe { atomic_swap ( self . v . get ( ) , val, order) }
485
482
}
@@ -501,7 +498,6 @@ impl AtomicInt {
501
498
/// let value = some_int.compare_and_swap(5, 10, Ordering::Relaxed);
502
499
/// ```
503
500
#[ inline]
504
- #[ stable]
505
501
pub fn compare_and_swap ( & self , old : int , new : int , order : Ordering ) -> int {
506
502
unsafe { atomic_compare_and_swap ( self . v . get ( ) , old, new, order) }
507
503
}
@@ -518,7 +514,6 @@ impl AtomicInt {
518
514
/// assert_eq!(10, foo.load(Ordering::SeqCst));
519
515
/// ```
520
516
#[ inline]
521
- #[ stable]
522
517
pub fn fetch_add ( & self , val : int , order : Ordering ) -> int {
523
518
unsafe { atomic_add ( self . v . get ( ) , val, order) }
524
519
}
@@ -535,7 +530,6 @@ impl AtomicInt {
535
530
/// assert_eq!(-10, foo.load(Ordering::SeqCst));
536
531
/// ```
537
532
#[ inline]
538
- #[ stable]
539
533
pub fn fetch_sub ( & self , val : int , order : Ordering ) -> int {
540
534
unsafe { atomic_sub ( self . v . get ( ) , val, order) }
541
535
}
@@ -551,7 +545,6 @@ impl AtomicInt {
551
545
/// assert_eq!(0b101101, foo.fetch_and(0b110011, Ordering::SeqCst));
552
546
/// assert_eq!(0b100001, foo.load(Ordering::SeqCst));
553
547
#[ inline]
554
- #[ stable]
555
548
pub fn fetch_and ( & self , val : int , order : Ordering ) -> int {
556
549
unsafe { atomic_and ( self . v . get ( ) , val, order) }
557
550
}
@@ -567,7 +560,6 @@ impl AtomicInt {
567
560
/// assert_eq!(0b101101, foo.fetch_or(0b110011, Ordering::SeqCst));
568
561
/// assert_eq!(0b111111, foo.load(Ordering::SeqCst));
569
562
#[ inline]
570
- #[ stable]
571
563
pub fn fetch_or ( & self , val : int , order : Ordering ) -> int {
572
564
unsafe { atomic_or ( self . v . get ( ) , val, order) }
573
565
}
@@ -583,12 +575,12 @@ impl AtomicInt {
583
575
/// assert_eq!(0b101101, foo.fetch_xor(0b110011, Ordering::SeqCst));
584
576
/// assert_eq!(0b011110, foo.load(Ordering::SeqCst));
585
577
#[ inline]
586
- #[ stable]
587
578
pub fn fetch_xor ( & self , val : int , order : Ordering ) -> int {
588
579
unsafe { atomic_xor ( self . v . get ( ) , val, order) }
589
580
}
590
581
}
591
582
583
+ #[ unstable = "awaiting int/uint conventions, types may change" ]
592
584
impl AtomicUint {
593
585
/// Creates a new `AtomicUint`.
594
586
///
@@ -600,7 +592,6 @@ impl AtomicUint {
600
592
/// let atomic_forty_two = AtomicUint::new(42u);
601
593
/// ```
602
594
#[ inline]
603
- #[ stable]
604
595
pub fn new ( v : uint ) -> AtomicUint {
605
596
AtomicUint { v : UnsafeCell :: new ( v) }
606
597
}
@@ -623,7 +614,6 @@ impl AtomicUint {
623
614
/// let value = some_uint.load(Ordering::Relaxed);
624
615
/// ```
625
616
#[ inline]
626
- #[ stable]
627
617
pub fn load ( & self , order : Ordering ) -> uint {
628
618
unsafe { atomic_load ( self . v . get ( ) as * const uint , order) }
629
619
}
@@ -646,7 +636,6 @@ impl AtomicUint {
646
636
///
647
637
/// Panics if `order` is `Acquire` or `AcqRel`.
648
638
#[ inline]
649
- #[ stable]
650
639
pub fn store ( & self , val : uint , order : Ordering ) {
651
640
unsafe { atomic_store ( self . v . get ( ) , val, order) ; }
652
641
}
@@ -665,7 +654,6 @@ impl AtomicUint {
665
654
/// let value = some_uint.swap(10, Ordering::Relaxed);
666
655
/// ```
667
656
#[ inline]
668
- #[ stable]
669
657
pub fn swap ( & self , val : uint , order : Ordering ) -> uint {
670
658
unsafe { atomic_swap ( self . v . get ( ) , val, order) }
671
659
}
@@ -687,7 +675,6 @@ impl AtomicUint {
687
675
/// let value = some_uint.compare_and_swap(5, 10, Ordering::Relaxed);
688
676
/// ```
689
677
#[ inline]
690
- #[ stable]
691
678
pub fn compare_and_swap ( & self , old : uint , new : uint , order : Ordering ) -> uint {
692
679
unsafe { atomic_compare_and_swap ( self . v . get ( ) , old, new, order) }
693
680
}
@@ -704,7 +691,6 @@ impl AtomicUint {
704
691
/// assert_eq!(10, foo.load(Ordering::SeqCst));
705
692
/// ```
706
693
#[ inline]
707
- #[ stable]
708
694
pub fn fetch_add ( & self , val : uint , order : Ordering ) -> uint {
709
695
unsafe { atomic_add ( self . v . get ( ) , val, order) }
710
696
}
@@ -721,7 +707,6 @@ impl AtomicUint {
721
707
/// assert_eq!(0, foo.load(Ordering::SeqCst));
722
708
/// ```
723
709
#[ inline]
724
- #[ stable]
725
710
pub fn fetch_sub ( & self , val : uint , order : Ordering ) -> uint {
726
711
unsafe { atomic_sub ( self . v . get ( ) , val, order) }
727
712
}
@@ -737,7 +722,6 @@ impl AtomicUint {
737
722
/// assert_eq!(0b101101, foo.fetch_and(0b110011, Ordering::SeqCst));
738
723
/// assert_eq!(0b100001, foo.load(Ordering::SeqCst));
739
724
#[ inline]
740
- #[ stable]
741
725
pub fn fetch_and ( & self , val : uint , order : Ordering ) -> uint {
742
726
unsafe { atomic_and ( self . v . get ( ) , val, order) }
743
727
}
@@ -753,7 +737,6 @@ impl AtomicUint {
753
737
/// assert_eq!(0b101101, foo.fetch_or(0b110011, Ordering::SeqCst));
754
738
/// assert_eq!(0b111111, foo.load(Ordering::SeqCst));
755
739
#[ inline]
756
- #[ stable]
757
740
pub fn fetch_or ( & self , val : uint , order : Ordering ) -> uint {
758
741
unsafe { atomic_or ( self . v . get ( ) , val, order) }
759
742
}
@@ -769,7 +752,6 @@ impl AtomicUint {
769
752
/// assert_eq!(0b101101, foo.fetch_xor(0b110011, Ordering::SeqCst));
770
753
/// assert_eq!(0b011110, foo.load(Ordering::SeqCst));
771
754
#[ inline]
772
- #[ stable]
773
755
pub fn fetch_xor ( & self , val : uint , order : Ordering ) -> uint {
774
756
unsafe { atomic_xor ( self . v . get ( ) , val, order) }
775
757
}
0 commit comments