@@ -155,11 +155,13 @@ impl AtomicInt {
155
155
unsafe { atomic_compare_and_swap ( & mut self . v , old, new, order) }
156
156
}
157
157
158
+ /// Returns the old value (like __sync_fetch_and_add).
158
159
#[ inline( always) ]
159
160
pub fn fetch_add ( & mut self , val : int , order : Ordering ) -> int {
160
161
unsafe { atomic_add ( & mut self . v , val, order) }
161
162
}
162
163
164
+ /// Returns the old value (like __sync_fetch_and_sub).
163
165
#[ inline( always) ]
164
166
pub fn fetch_sub ( & mut self , val : int , order : Ordering ) -> int {
165
167
unsafe { atomic_sub ( & mut self . v , val, order) }
@@ -191,11 +193,13 @@ impl AtomicUint {
191
193
unsafe { atomic_compare_and_swap ( & mut self . v , old, new, order) }
192
194
}
193
195
196
+ /// Returns the old value (like __sync_fetch_and_add).
194
197
#[ inline( always) ]
195
198
pub fn fetch_add ( & mut self , val : uint , order : Ordering ) -> uint {
196
199
unsafe { atomic_add ( & mut self . v , val, order) }
197
200
}
198
201
202
+ /// Returns the old value (like __sync_fetch_and_sub)..
199
203
#[ inline( always) ]
200
204
pub fn fetch_sub ( & mut self , val : uint , order : Ordering ) -> uint {
201
205
unsafe { atomic_sub ( & mut self . v , val, order) }
@@ -315,6 +319,7 @@ pub unsafe fn atomic_swap<T>(dst: &mut T, val: T, order: Ordering) -> T {
315
319
} )
316
320
}
317
321
322
+ /// Returns the old value (like __sync_fetch_and_add).
318
323
#[ inline( always) ]
319
324
pub unsafe fn atomic_add < T > ( dst : & mut T , val : T , order : Ordering ) -> T {
320
325
let dst = cast:: transmute ( dst) ;
@@ -327,6 +332,7 @@ pub unsafe fn atomic_add<T>(dst: &mut T, val: T, order: Ordering) -> T {
327
332
} )
328
333
}
329
334
335
+ /// Returns the old value (like __sync_fetch_and_sub).
330
336
#[ inline( always) ]
331
337
pub unsafe fn atomic_sub < T > ( dst : & mut T , val : T , order : Ordering ) -> T {
332
338
let dst = cast:: transmute ( dst) ;
0 commit comments