Skip to content

Commit 86d45f9

Browse files
committed
---
yaml --- r: 149436 b: refs/heads/try2 c: 56cf237 h: refs/heads/master v: v3
1 parent 901d783 commit 86d45f9

File tree

38 files changed

+1403
-824
lines changed

38 files changed

+1403
-824
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ refs/heads/snap-stage3: 78a7676898d9f80ab540c6df5d4c9ce35bb50463
55
refs/heads/try: 519addf6277dbafccbb4159db4b710c37eaa2ec5
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b
8-
refs/heads/try2: 66f93291ec62682b48ef2411295843a04cbfd8e5
8+
refs/heads/try2: 56cf237ee24df51acc05634c962cd20a66477fa4
99
refs/heads/dist-snap: ba4081a5a8573875fed17545846f6f6902c8ba8d
1010
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596
1111
refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503

branches/try2/src/doc/complement-cheatsheet.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,14 @@ let y: int = x.unwrap();
2222

2323
**Int to string, in non-base-10**
2424

25-
Use [`ToStrRadix`](http://static.rust-lang.org/doc/master/std/num/trait.ToStrRadix.html).
25+
Use the `format!` syntax extension.
2626

2727
~~~
28-
use std::num::ToStrRadix;
29-
3028
let x: int = 42;
31-
let y: ~str = x.to_str_radix(16);
29+
let y: ~str = format!("{:t}", x); // binary
30+
let y: ~str = format!("{:o}", x); // octal
31+
let y: ~str = format!("{:x}", x); // lowercase hexadecimal
32+
let y: ~str = format!("{:X}", x); // uppercase hexidecimal
3233
~~~
3334

3435
**String to int, in non-base-10**

branches/try2/src/doc/rust.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -752,35 +752,35 @@ mod task {
752752
#### View items
753753

754754
~~~~ {.ebnf .gram}
755-
view_item : extern_mod_decl | use_decl ;
755+
view_item : extern_crate_decl | use_decl ;
756756
~~~~
757757

758758
A view item manages the namespace of a module.
759759
View items do not define new items, but rather, simply change other items' visibility.
760760
There are several kinds of view item:
761761

762-
* [`extern crate` declarations](#extern-mod-declarations)
762+
* [`extern crate` declarations](#extern-crate-declarations)
763763
* [`use` declarations](#use-declarations)
764764

765-
##### Extern mod declarations
765+
##### Extern crate declarations
766766

767767
~~~~ {.ebnf .gram}
768-
extern_mod_decl : "extern" "mod" ident [ '(' link_attrs ')' ] ? [ '=' string_lit ] ? ;
768+
extern_crate_decl : "extern" "crate" ident [ '(' link_attrs ')' ] ? [ '=' string_lit ] ? ;
769769
link_attrs : link_attr [ ',' link_attrs ] + ;
770770
link_attr : ident '=' literal ;
771771
~~~~
772772

773773
An _`extern crate` declaration_ specifies a dependency on an external crate.
774-
The external crate is then bound into the declaring scope
775-
as the `ident` provided in the `extern_mod_decl`.
774+
The external crate is then bound into the declaring scope as the `ident` provided
775+
in the `extern_crate_decl`.
776776

777777
The external crate is resolved to a specific `soname` at compile time, and a
778778
runtime linkage requirement to that `soname` is passed to the linker for
779779
loading at runtime. The `soname` is resolved at compile time by scanning the
780780
compiler's library path and matching the optional `crateid` provided as a string literal
781781
against the `crateid` attributes that were declared on the external crate when
782782
it was compiled. If no `crateid` is provided, a default `name` attribute is
783-
assumed, equal to the `ident` given in the `extern_mod_decl`.
783+
assumed, equal to the `ident` given in the `extern_crate_decl`.
784784

785785
Four examples of `extern crate` declarations:
786786

@@ -813,7 +813,7 @@ module item. These declarations may appear at the top of [modules](#modules) and
813813

814814
*Note*: Unlike in many languages,
815815
`use` declarations in Rust do *not* declare linkage dependency with external crates.
816-
Rather, [`extern crate` declarations](#extern-mod-declarations) declare linkage dependencies.
816+
Rather, [`extern crate` declarations](#extern-crate-declarations) declare linkage dependencies.
817817

818818
Use declarations support a number of convenient shortcuts:
819819

branches/try2/src/doc/tutorial.md

Lines changed: 6 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -495,8 +495,7 @@ reject the previous example if the arm with the wildcard pattern was
495495
omitted.
496496

497497
A powerful application of pattern matching is *destructuring*:
498-
matching in order to bind names to the contents of data
499-
types.
498+
matching in order to bind names to the contents of data types.
500499

501500
> ***Note:*** The following code makes use of tuples (`(f64, f64)`) which
502501
> are explained in section 5.3. For now you can think of tuples as a list of
@@ -2726,7 +2725,8 @@ pub mod barn {
27262725

27272726
In short, `mod foo;` is just syntactic sugar for `mod foo { /* content of <...>/foo.rs or <...>/foo/mod.rs */ }`.
27282727

2729-
This also means that having two or more identical `mod foo;` declarations somewhere in your crate hierarchy is generally a bad idea,
2728+
This also means that having two or more identical `mod foo;` declarations
2729+
somewhere in your crate hierarchy is generally a bad idea,
27302730
just like copy-and-paste-ing a module into multiple places is a bad idea.
27312731
Both will result in duplicate and mutually incompatible definitions.
27322732

@@ -3074,11 +3074,6 @@ fn main() {
30743074
It's a bit weird, but it's the result of shadowing rules that have been set that way because
30753075
they model most closely what people expect to shadow.
30763076

3077-
## Package ids
3078-
3079-
If you use `extern crate`, per default `rustc` will look for libraries in the library search path (which you can
3080-
extend with the `-L` switch).
3081-
30823077
## Crate metadata and settings
30833078

30843079
For every crate you can define a number of metadata items, such as link name, version or author.
@@ -3096,14 +3091,13 @@ Therefore, if you plan to compile your crate as a library, you should annotate i
30963091
// `lib.rs`
30973092
30983093
# #[crate_type = "lib"];
3099-
// Package ID
31003094
#[crate_id = "farm#2.5"];
31013095
31023096
// ...
31033097
# fn farm() {}
31043098
~~~~
31053099

3106-
You can also specify package ID information in a `extern crate` statement. For
3100+
You can also specify crate id information in a `extern crate` statement. For
31073101
example, these `extern crate` statements would both accept and select the
31083102
crate define above:
31093103

@@ -3161,7 +3155,7 @@ Now compile and run like this (adjust to your platform if necessary):
31613155
Notice that the library produced contains the version in the file name
31623156
as well as an inscrutable string of alphanumerics. As explained in the previous paragraph,
31633157
these are both part of Rust's library versioning scheme. The alphanumerics are
3164-
a hash representing the crates package ID.
3158+
a hash representing the crates id.
31653159

31663160
## The standard library and the prelude
31673161

@@ -3231,8 +3225,7 @@ library. You can link to a library such as `extra` with an `extern crate extra;
32313225
[extra library]: extra/index.html
32323226

32333227
Right now `extra` contains those definitions directly, but in the future it will likely just
3234-
re-export a bunch of 'officially blessed' crates that get managed with a
3235-
package manager.
3228+
re-export a bunch of 'officially blessed' crates that get managed with a package manager.
32363229

32373230
# What next?
32383231

branches/try2/src/etc/vim/syntax/rust.vim

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ syn keyword rustTrait Iterator DoubleEndedIterator RandomAccessIterator Cloneabl
8585
syn keyword rustTrait OrdIterator MutableDoubleEndedIterator ExactSize
8686

8787
syn keyword rustTrait Algebraic Trigonometric Exponential Hyperbolic
88-
syn keyword rustTrait Bitwise Bounded Integer
88+
syn keyword rustTrait Bitwise Bounded Fractional
8989
syn keyword rustTrait Num NumCast CheckedAdd CheckedSub CheckedMul CheckedDiv
9090
syn keyword rustTrait Orderable Signed Unsigned Round
9191
syn keyword rustTrait Primitive Int Float ToStrRadix ToPrimitive FromPrimitive

branches/try2/src/libnum/bigint.rs

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ A `BigUint` is represented as an array of `BigDigit`s.
1616
A `BigInt` is a combination of `BigUint` and `Sign`.
1717
*/
1818

19+
use Integer;
20+
1921
use std::cmp;
2022
use std::cmp::{Eq, Ord, TotalEq, TotalOrd, Ordering, Less, Equal, Greater};
2123
use std::num::{Zero, One, ToStrRadix, FromStrRadix};
@@ -461,7 +463,7 @@ impl Integer for BigUint {
461463

462464
/// Returns `true` if the number can be divided by `other` without leaving a remainder
463465
#[inline]
464-
fn is_multiple_of(&self, other: &BigUint) -> bool { (*self % *other).is_zero() }
466+
fn divides(&self, other: &BigUint) -> bool { (*self % *other).is_zero() }
465467

466468
/// Returns `true` if the number is divisible by `2`
467469
#[inline]
@@ -1118,7 +1120,7 @@ impl Integer for BigInt {
11181120

11191121
/// Returns `true` if the number can be divided by `other` without leaving a remainder
11201122
#[inline]
1121-
fn is_multiple_of(&self, other: &BigInt) -> bool { self.data.is_multiple_of(&other.data) }
1123+
fn divides(&self, other: &BigInt) -> bool { self.data.divides(&other.data) }
11221124

11231125
/// Returns `true` if the number is divisible by `2`
11241126
#[inline]
@@ -1388,6 +1390,7 @@ impl BigInt {
13881390
13891391
#[cfg(test)]
13901392
mod biguint_tests {
1393+
use Integer;
13911394
use super::{BigDigit, BigUint, ToBigUint};
13921395
use super::{Plus, BigInt, RandBigInt, ToBigInt};
13931396
@@ -2045,6 +2048,7 @@ mod biguint_tests {
20452048

20462049
#[cfg(test)]
20472050
mod bigint_tests {
2051+
use Integer;
20482052
use super::{BigDigit, BigUint, ToBigUint};
20492053
use super::{Sign, Minus, Zero, Plus, BigInt, RandBigInt, ToBigInt};
20502054

0 commit comments

Comments
 (0)