Skip to content

Commit 44af506

Browse files
committed
auto merge of #6871 : pcwalton/rust/de-pub-impl, r=pcwalton
2 parents b8391cc + 5fb2546 commit 44af506

File tree

183 files changed

+2905
-2785
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

183 files changed

+2905
-2785
lines changed

src/libextra/arc.rs

+40-34
Original file line numberDiff line numberDiff line change
@@ -56,10 +56,10 @@ pub struct Condvar<'self> {
5656
cond: &'self sync::Condvar<'self>
5757
}
5858

59-
pub impl<'self> Condvar<'self> {
59+
impl<'self> Condvar<'self> {
6060
/// Atomically exit the associated ARC and block until a signal is sent.
6161
#[inline(always)]
62-
fn wait(&self) { self.wait_on(0) }
62+
pub fn wait(&self) { self.wait_on(0) }
6363

6464
/**
6565
* Atomically exit the associated ARC and block on a specified condvar
@@ -68,7 +68,7 @@ pub impl<'self> Condvar<'self> {
6868
* wait() is equivalent to wait_on(0).
6969
*/
7070
#[inline(always)]
71-
fn wait_on(&self, condvar_id: uint) {
71+
pub fn wait_on(&self, condvar_id: uint) {
7272
assert!(!*self.failed);
7373
self.cond.wait_on(condvar_id);
7474
// This is why we need to wrap sync::condvar.
@@ -77,28 +77,28 @@ pub impl<'self> Condvar<'self> {
7777

7878
/// Wake up a blocked task. Returns false if there was no blocked task.
7979
#[inline(always)]
80-
fn signal(&self) -> bool { self.signal_on(0) }
80+
pub fn signal(&self) -> bool { self.signal_on(0) }
8181

8282
/**
8383
* Wake up a blocked task on a specified condvar (as
8484
* sync::cond.signal_on). Returns false if there was no blocked task.
8585
*/
8686
#[inline(always)]
87-
fn signal_on(&self, condvar_id: uint) -> bool {
87+
pub fn signal_on(&self, condvar_id: uint) -> bool {
8888
assert!(!*self.failed);
8989
self.cond.signal_on(condvar_id)
9090
}
9191

9292
/// Wake up all blocked tasks. Returns the number of tasks woken.
9393
#[inline(always)]
94-
fn broadcast(&self) -> uint { self.broadcast_on(0) }
94+
pub fn broadcast(&self) -> uint { self.broadcast_on(0) }
9595

9696
/**
9797
* Wake up all blocked tasks on a specified condvar (as
9898
* sync::cond.broadcast_on). Returns Returns the number of tasks woken.
9999
*/
100100
#[inline(always)]
101-
fn broadcast_on(&self, condvar_id: uint) -> uint {
101+
pub fn broadcast_on(&self, condvar_id: uint) -> uint {
102102
assert!(!*self.failed);
103103
self.cond.broadcast_on(condvar_id)
104104
}
@@ -120,8 +120,8 @@ pub fn ARC<T:Const + Owned>(data: T) -> ARC<T> {
120120
* Access the underlying data in an atomically reference counted
121121
* wrapper.
122122
*/
123-
pub impl<T:Const+Owned> ARC<T> {
124-
fn get<'a>(&'a self) -> &'a T {
123+
impl<T:Const+Owned> ARC<T> {
124+
pub fn get<'a>(&'a self) -> &'a T {
125125
unsafe { &*self.x.get_immut() }
126126
}
127127
}
@@ -173,7 +173,7 @@ impl<T:Owned> Clone for MutexARC<T> {
173173
}
174174
}
175175

176-
pub impl<T:Owned> MutexARC<T> {
176+
impl<T:Owned> MutexARC<T> {
177177

178178
/**
179179
* Access the underlying mutable data with mutual exclusion from other
@@ -199,7 +199,7 @@ pub impl<T:Owned> MutexARC<T> {
199199
* blocked on the mutex) will also fail immediately.
200200
*/
201201
#[inline(always)]
202-
unsafe fn access<U>(&self, blk: &fn(x: &mut T) -> U) -> U {
202+
pub unsafe fn access<U>(&self, blk: &fn(x: &mut T) -> U) -> U {
203203
unsafe {
204204
let state = self.x.get();
205205
// Borrowck would complain about this if the function were
@@ -214,10 +214,10 @@ pub impl<T:Owned> MutexARC<T> {
214214

215215
/// As access(), but with a condvar, as sync::mutex.lock_cond().
216216
#[inline(always)]
217-
unsafe fn access_cond<'x, 'c, U>(
218-
&self,
219-
blk: &fn(x: &'x mut T, c: &'c Condvar) -> U) -> U
220-
{
217+
pub unsafe fn access_cond<'x, 'c, U>(&self,
218+
blk: &fn(x: &'x mut T,
219+
c: &'c Condvar) -> U)
220+
-> U {
221221
let state = self.x.get();
222222
do (&(*state).lock).lock_cond |cond| {
223223
check_poison(true, (*state).failed);
@@ -302,16 +302,18 @@ pub fn rw_arc_with_condvars<T:Const + Owned>(
302302
RWARC { x: UnsafeAtomicRcBox::new(data), cant_nest: () }
303303
}
304304

305-
pub impl<T:Const + Owned> RWARC<T> {
305+
impl<T:Const + Owned> RWARC<T> {
306306
/// Duplicate a rwlock-protected ARC, as arc::clone.
307-
fn clone(&self) -> RWARC<T> {
308-
RWARC { x: self.x.clone(),
309-
cant_nest: () }
307+
pub fn clone(&self) -> RWARC<T> {
308+
RWARC {
309+
x: self.x.clone(),
310+
cant_nest: (),
311+
}
310312
}
311313

312314
}
313315

314-
pub impl<T:Const + Owned> RWARC<T> {
316+
impl<T:Const + Owned> RWARC<T> {
315317
/**
316318
* Access the underlying data mutably. Locks the rwlock in write mode;
317319
* other readers and writers will block.
@@ -323,7 +325,7 @@ pub impl<T:Const + Owned> RWARC<T> {
323325
* poison the ARC, so subsequent readers and writers will both also fail.
324326
*/
325327
#[inline(always)]
326-
fn write<U>(&self, blk: &fn(x: &mut T) -> U) -> U {
328+
pub fn write<U>(&self, blk: &fn(x: &mut T) -> U) -> U {
327329
unsafe {
328330
let state = self.x.get();
329331
do (*borrow_rwlock(state)).write {
@@ -333,11 +335,12 @@ pub impl<T:Const + Owned> RWARC<T> {
333335
}
334336
}
335337
}
338+
336339
/// As write(), but with a condvar, as sync::rwlock.write_cond().
337340
#[inline(always)]
338-
fn write_cond<'x, 'c, U>(&self,
339-
blk: &fn(x: &'x mut T, c: &'c Condvar) -> U)
340-
-> U {
341+
pub fn write_cond<'x, 'c, U>(&self,
342+
blk: &fn(x: &'x mut T, c: &'c Condvar) -> U)
343+
-> U {
341344
unsafe {
342345
let state = self.x.get();
343346
do (*borrow_rwlock(state)).write_cond |cond| {
@@ -350,6 +353,7 @@ pub impl<T:Const + Owned> RWARC<T> {
350353
}
351354
}
352355
}
356+
353357
/**
354358
* Access the underlying data immutably. May run concurrently with other
355359
* reading tasks.
@@ -359,7 +363,7 @@ pub impl<T:Const + Owned> RWARC<T> {
359363
* Failing will unlock the ARC while unwinding. However, unlike all other
360364
* access modes, this will not poison the ARC.
361365
*/
362-
fn read<U>(&self, blk: &fn(x: &T) -> U) -> U {
366+
pub fn read<U>(&self, blk: &fn(x: &T) -> U) -> U {
363367
unsafe {
364368
let state = self.x.get();
365369
do (*state).lock.read {
@@ -389,7 +393,7 @@ pub impl<T:Const + Owned> RWARC<T> {
389393
* }
390394
* ~~~
391395
*/
392-
fn write_downgrade<U>(&self, blk: &fn(v: RWWriteMode<T>) -> U) -> U {
396+
pub fn write_downgrade<U>(&self, blk: &fn(v: RWWriteMode<T>) -> U) -> U {
393397
unsafe {
394398
let state = self.x.get();
395399
do (*borrow_rwlock(state)).write_downgrade |write_mode| {
@@ -404,7 +408,8 @@ pub impl<T:Const + Owned> RWARC<T> {
404408
}
405409

406410
/// To be called inside of the write_downgrade block.
407-
fn downgrade<'a>(&self, token: RWWriteMode<'a, T>) -> RWReadMode<'a, T> {
411+
pub fn downgrade<'a>(&self, token: RWWriteMode<'a, T>)
412+
-> RWReadMode<'a, T> {
408413
unsafe {
409414
// The rwlock should assert that the token belongs to us for us.
410415
let state = self.x.get();
@@ -451,9 +456,9 @@ pub struct RWReadMode<'self, T> {
451456
token: sync::RWlockReadMode<'self>,
452457
}
453458

454-
pub impl<'self, T:Const + Owned> RWWriteMode<'self, T> {
459+
impl<'self, T:Const + Owned> RWWriteMode<'self, T> {
455460
/// Access the pre-downgrade RWARC in write mode.
456-
fn write<U>(&mut self, blk: &fn(x: &mut T) -> U) -> U {
461+
pub fn write<U>(&mut self, blk: &fn(x: &mut T) -> U) -> U {
457462
match *self {
458463
RWWriteMode {
459464
data: &ref mut data,
@@ -466,10 +471,11 @@ pub impl<'self, T:Const + Owned> RWWriteMode<'self, T> {
466471
}
467472
}
468473
}
474+
469475
/// Access the pre-downgrade RWARC in write mode with a condvar.
470-
fn write_cond<'x, 'c, U>(&mut self,
471-
blk: &fn(x: &'x mut T, c: &'c Condvar) -> U)
472-
-> U {
476+
pub fn write_cond<'x, 'c, U>(&mut self,
477+
blk: &fn(x: &'x mut T, c: &'c Condvar) -> U)
478+
-> U {
473479
match *self {
474480
RWWriteMode {
475481
data: &ref mut data,
@@ -491,9 +497,9 @@ pub impl<'self, T:Const + Owned> RWWriteMode<'self, T> {
491497
}
492498
}
493499

494-
pub impl<'self, T:Const + Owned> RWReadMode<'self, T> {
500+
impl<'self, T:Const + Owned> RWReadMode<'self, T> {
495501
/// Access the post-downgrade rwlock in read mode.
496-
fn read<U>(&self, blk: &fn(x: &T) -> U) -> U {
502+
pub fn read<U>(&self, blk: &fn(x: &T) -> U) -> U {
497503
match *self {
498504
RWReadMode {
499505
data: data,

src/libextra/arena.rs

+10-10
Original file line numberDiff line numberDiff line change
@@ -166,9 +166,9 @@ unsafe fn un_bitpack_tydesc_ptr(p: uint) -> (*TypeDesc, bool) {
166166
(transmute(p & !1), p & 1 == 1)
167167
}
168168

169-
pub impl Arena {
169+
impl Arena {
170170
// Functions for the POD part of the arena
171-
priv fn alloc_pod_grow(&mut self, n_bytes: uint, align: uint) -> *u8 {
171+
fn alloc_pod_grow(&mut self, n_bytes: uint, align: uint) -> *u8 {
172172
// Allocate a new chunk.
173173
let chunk_size = at_vec::capacity(self.pod_head.data);
174174
let new_min_chunk_size = uint::max(n_bytes, chunk_size);
@@ -180,7 +180,7 @@ pub impl Arena {
180180
}
181181

182182
#[inline(always)]
183-
priv fn alloc_pod_inner(&mut self, n_bytes: uint, align: uint) -> *u8 {
183+
fn alloc_pod_inner(&mut self, n_bytes: uint, align: uint) -> *u8 {
184184
unsafe {
185185
// XXX: Borrow check
186186
let head = transmute_mut_region(&mut self.pod_head);
@@ -200,7 +200,7 @@ pub impl Arena {
200200
}
201201

202202
#[inline(always)]
203-
priv fn alloc_pod<'a, T>(&'a mut self, op: &fn() -> T) -> &'a T {
203+
fn alloc_pod<'a, T>(&'a mut self, op: &fn() -> T) -> &'a T {
204204
unsafe {
205205
let tydesc = sys::get_type_desc::<T>();
206206
let ptr = self.alloc_pod_inner((*tydesc).size, (*tydesc).align);
@@ -211,8 +211,8 @@ pub impl Arena {
211211
}
212212

213213
// Functions for the non-POD part of the arena
214-
priv fn alloc_nonpod_grow(&mut self, n_bytes: uint, align: uint)
215-
-> (*u8, *u8) {
214+
fn alloc_nonpod_grow(&mut self, n_bytes: uint, align: uint)
215+
-> (*u8, *u8) {
216216
// Allocate a new chunk.
217217
let chunk_size = at_vec::capacity(self.head.data);
218218
let new_min_chunk_size = uint::max(n_bytes, chunk_size);
@@ -224,8 +224,8 @@ pub impl Arena {
224224
}
225225

226226
#[inline(always)]
227-
priv fn alloc_nonpod_inner(&mut self, n_bytes: uint, align: uint)
228-
-> (*u8, *u8) {
227+
fn alloc_nonpod_inner(&mut self, n_bytes: uint, align: uint)
228+
-> (*u8, *u8) {
229229
unsafe {
230230
let head = transmute_mut_region(&mut self.head);
231231

@@ -247,7 +247,7 @@ pub impl Arena {
247247
}
248248

249249
#[inline(always)]
250-
priv fn alloc_nonpod<'a, T>(&'a mut self, op: &fn() -> T) -> &'a T {
250+
fn alloc_nonpod<'a, T>(&'a mut self, op: &fn() -> T) -> &'a T {
251251
unsafe {
252252
let tydesc = sys::get_type_desc::<T>();
253253
let (ty_ptr, ptr) =
@@ -269,7 +269,7 @@ pub impl Arena {
269269

270270
// The external interface
271271
#[inline(always)]
272-
fn alloc<'a, T>(&'a mut self, op: &fn() -> T) -> &'a T {
272+
pub fn alloc<'a, T>(&'a mut self, op: &fn() -> T) -> &'a T {
273273
unsafe {
274274
// XXX: Borrow check
275275
let this = transmute_mut_region(self);

0 commit comments

Comments
 (0)