Skip to content

Commit fc48a9c

Browse files
committed
---
yaml --- r: 62746 b: refs/heads/snap-stage3 c: 77de84b h: refs/heads/master v: v3
1 parent 1d11303 commit fc48a9c

File tree

19 files changed

+169
-166
lines changed

19 files changed

+169
-166
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
refs/heads/master: 2d28d645422c1617be58c8ca7ad9a457264ca850
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
4-
refs/heads/snap-stage3: 0d5fdce82e1e09df96ea2ee190e9fffd91b2c714
4+
refs/heads/snap-stage3: 77de84b4f629b63c784903ed7cc08c024b10496b
55
refs/heads/try: 7b78b52e602bb3ea8174f9b2006bff3315f03ef9
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b

branches/snap-stage3/src/libextra/arc.rs

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
* In this example, a large vector of floats is shared between several tasks.
1818
* With simple pipes, without ARC, a copy would have to be made for each task.
1919
*
20-
* ~~~ {.rust}
20+
* ~~~
2121
* extern mod std;
2222
* use std::arc;
2323
* let numbers=vec::from_fn(100, |ind| (ind as float)*rand::random());
@@ -370,10 +370,7 @@ pub impl<T:Const + Owned> RWARC<T> {
370370
* See sync::rwlock.write_downgrade(). The RWWriteMode token must be used
371371
* to obtain the &mut T, and can be transformed into a RWReadMode token by
372372
* calling downgrade(), after which a &T can be obtained instead.
373-
*
374-
* # Example
375-
*
376-
* ~~~ {.rust}
373+
* ~~~
377374
* do arc.write_downgrade |write_mode| {
378375
* do (&write_mode).write_cond |state, condvar| {
379376
* ... exclusive access with mutable state ...

branches/snap-stage3/src/libextra/base64.rs

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -28,17 +28,17 @@ impl<'self> ToBase64 for &'self [u8] {
2828
/**
2929
* Turn a vector of `u8` bytes into a base64 string.
3030
*
31-
* # Example
31+
* *Example*:
3232
*
33-
* ~~~ {.rust}
33+
* ~~~~
3434
* extern mod std;
3535
* use std::base64::ToBase64;
3636
*
3737
* fn main () {
3838
* let str = [52,32].to_base64();
3939
* println(fmt!("%s", str));
4040
* }
41-
* ~~~
41+
* ~~~~
4242
*/
4343
fn to_base64(&self) -> ~str {
4444
let mut s = ~"";
@@ -91,17 +91,17 @@ impl<'self> ToBase64 for &'self str {
9191
* Convert any string (literal, `@`, `&`, or `~`) to base64 encoding.
9292
*
9393
*
94-
* # Example
94+
* *Example*:
9595
*
96-
* ~~~ {.rust}
96+
* ~~~~
9797
* extern mod std;
9898
* use std::base64::ToBase64;
9999
*
100100
* fn main () {
101101
* let str = "Hello, World".to_base64();
102102
* println(fmt!("%s",str));
103103
* }
104-
* ~~~
104+
* ~~~~
105105
*
106106
*/
107107
fn to_base64(&self) -> ~str {
@@ -118,9 +118,9 @@ impl FromBase64 for ~[u8] {
118118
* Convert base64 `u8` vector into u8 byte values.
119119
* Every 4 encoded characters is converted into 3 octets, modulo padding.
120120
*
121-
* # Example
121+
* *Example*:
122122
*
123-
* ~~~ {.rust}
123+
* ~~~~
124124
* extern mod std;
125125
* use std::base64::ToBase64;
126126
* use std::base64::FromBase64;
@@ -131,7 +131,7 @@ impl FromBase64 for ~[u8] {
131131
* let bytes = str.from_base64();
132132
* println(fmt!("%?",bytes));
133133
* }
134-
* ~~~
134+
* ~~~~
135135
*/
136136
fn from_base64(&self) -> ~[u8] {
137137
if self.len() % 4u != 0u { fail!("invalid base64 length"); }
@@ -196,11 +196,11 @@ impl FromBase64 for ~str {
196196
* You can use the `from_bytes` function in `core::str`
197197
* to turn a `[u8]` into a string with characters corresponding to those values.
198198
*
199-
* # Example
199+
* *Example*:
200200
*
201201
* This converts a string literal to base64 and back.
202202
*
203-
* ~~~ {.rust}
203+
* ~~~~
204204
* extern mod std;
205205
* use std::base64::ToBase64;
206206
* use std::base64::FromBase64;
@@ -214,7 +214,7 @@ impl FromBase64 for ~str {
214214
* let result_str = str::from_bytes(bytes);
215215
* println(fmt!("%s",result_str));
216216
* }
217-
* ~~~
217+
* ~~~~
218218
*/
219219
fn from_base64(&self) -> ~[u8] {
220220
str::to_bytes(*self).from_base64()

branches/snap-stage3/src/libextra/deque.rs

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -125,6 +125,31 @@ pub impl<T> Deque<T> {
125125
self.hi = (self.hi + 1u) % self.elts.len();
126126
self.nelts += 1u;
127127
}
128+
129+
/// Reserve capacity for exactly `n` elements in the given deque,
130+
/// doing nothing if `self`'s capacity is already equal to or greater
131+
/// than the requested capacity
132+
///
133+
/// # Arguments
134+
///
135+
/// * n - The number of elements to reserve space for
136+
fn reserve(&mut self, n: uint) {
137+
vec::reserve(&mut self.elts, n);
138+
}
139+
140+
/// Reserve capacity for at least `n` elements in the given deque,
141+
/// over-allocating in case the caller needs to reserve additional
142+
/// space.
143+
///
144+
/// Do nothing if `self`'s capacity is already equal to or greater
145+
/// than the requested capacity.
146+
///
147+
/// # Arguments
148+
///
149+
/// * n - The number of elements to reserve space for
150+
fn reserve_at_least(&mut self, n: uint) {
151+
vec::reserve_at_least(&mut self.elts, n);
152+
}
128153
}
129154

130155
/// Grow is only called on full elts, so nelts is also len(elts), unlike
@@ -149,6 +174,7 @@ mod tests {
149174
use super::*;
150175
use core::cmp::Eq;
151176
use core::kinds::Copy;
177+
use core::vec::capacity;
152178

153179
#[test]
154180
fn test_simple() {
@@ -328,4 +354,29 @@ mod tests {
328354
}
329355

330356
}
357+
358+
#[test]
359+
fn test_reserve() {
360+
let mut d = Deque::new();
361+
d.add_back(0u64);
362+
d.reserve(50);
363+
assert_eq!(capacity(&mut d.elts), 50);
364+
let mut d = Deque::new();
365+
d.add_back(0u32);
366+
d.reserve(50);
367+
assert_eq!(capacity(&mut d.elts), 50);
368+
}
369+
370+
#[test]
371+
fn test_reserve_at_least() {
372+
let mut d = Deque::new();
373+
d.add_back(0u64);
374+
d.reserve_at_least(50);
375+
assert_eq!(capacity(&mut d.elts), 64);
376+
let mut d = Deque::new();
377+
d.add_back(0u32);
378+
d.reserve_at_least(50);
379+
assert_eq!(capacity(&mut d.elts), 64);
380+
}
381+
331382
}

branches/snap-stage3/src/libextra/flatpipes.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ ports and channels.
2525
2626
This example sends boxed integers across tasks using serialization.
2727
28-
~~~ {.rust}
28+
~~~
2929
let (port, chan) = serial::pipe_stream();
3030
3131
do task::spawn || {

branches/snap-stage3/src/libextra/future.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
*
1515
* # Example
1616
*
17-
* ~~~ {.rust}
17+
* ~~~
1818
* # fn fib(n: uint) -> uint {42};
1919
* # fn make_a_sandwich() {};
2020
* let mut delayed_fib = std::future::spawn (|| fib(5000) );

branches/snap-stage3/src/libextra/net_tcp.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -466,7 +466,7 @@ fn read_future(sock: &TcpSocket, timeout_msecs: uint)
466466
* Here, the `new_conn` is used in conjunction with `accept` from within
467467
* a task spawned by the `new_connect_cb` passed into `listen`
468468
*
469-
* ~~~ {.rust}
469+
* ~~~~~~~~~~~
470470
* do net::tcp::listen(remote_ip, remote_port, backlog, iotask,
471471
* // this callback is ran once after the connection is successfully
472472
* // set up
@@ -497,7 +497,7 @@ fn read_future(sock: &TcpSocket, timeout_msecs: uint)
497497
* None => ()
498498
* }
499499
* };
500-
* ~~~
500+
* ~~~~~~~~~~~
501501
*
502502
* # Arguments
503503
*

branches/snap-stage3/src/libextra/sync.rs

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -545,10 +545,7 @@ pub impl RWlock {
545545
* the meantime (such as unlocking and then re-locking as a reader would
546546
* do). The block takes a "write mode token" argument, which can be
547547
* transformed into a "read mode token" by calling downgrade(). Example:
548-
*
549-
* # Example
550-
*
551-
* ~~~ {.rust}
548+
* ~~~
552549
* do lock.write_downgrade |write_mode| {
553550
* do (&write_mode).write_cond |condvar| {
554551
* ... exclusive access ...

0 commit comments

Comments
 (0)