Add isize, usize modules, deprecate int, uint modules
This PR introduces `isize` and `usize` modules to `core` and `std`, and deprecates the existing `int` and `uint` modules. The rustdoc primitive type links now point to these new modules. Due to deprecation this is a: [breaking-change]
This commit is contained in:
parent
b53e9f17d3
commit
7deb9abd1b
@ -78,12 +78,14 @@ mod int_macros;
|
||||
mod uint_macros;
|
||||
|
||||
#[path = "num/int.rs"] pub mod int;
|
||||
#[path = "num/isize.rs"] pub mod isize;
|
||||
#[path = "num/i8.rs"] pub mod i8;
|
||||
#[path = "num/i16.rs"] pub mod i16;
|
||||
#[path = "num/i32.rs"] pub mod i32;
|
||||
#[path = "num/i64.rs"] pub mod i64;
|
||||
|
||||
#[path = "num/uint.rs"] pub mod uint;
|
||||
#[path = "num/usize.rs"] pub mod usize;
|
||||
#[path = "num/u8.rs"] pub mod u8;
|
||||
#[path = "num/u16.rs"] pub mod u16;
|
||||
#[path = "num/u32.rs"] pub mod u32;
|
||||
|
@ -8,10 +8,13 @@
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
//! Operations and constants for architecture-sized signed integers (`int` type)
|
||||
//! Deprecated: replaced by `isize`.
|
||||
//!
|
||||
//! The rollout of the new type will gradually take place over the
|
||||
//! alpha cycle along with the development of clearer conventions
|
||||
//! around integer types.
|
||||
|
||||
#![stable]
|
||||
#![doc(primitive = "int")]
|
||||
#![deprecated = "replaced by isize"]
|
||||
|
||||
#[cfg(target_word_size = "32")] int_module! { int, 32 }
|
||||
#[cfg(target_word_size = "64")] int_module! { int, 64 }
|
||||
|
21
src/libcore/num/isize.rs
Normal file
21
src/libcore/num/isize.rs
Normal file
@ -0,0 +1,21 @@
|
||||
// Copyright 2012-2015 The Rust Project Developers. See the COPYRIGHT
|
||||
// file at the top-level directory of this distribution and at
|
||||
// http://rust-lang.org/COPYRIGHT.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
//! Operations and constants for pointer-sized signed integers (`isize` type)
|
||||
//!
|
||||
//! This type was recently added to replace `int`. The rollout of the
|
||||
//! new type will gradually take place over the alpha cycle along with
|
||||
//! the development of clearer conventions around integer types.
|
||||
|
||||
#![stable]
|
||||
#![doc(primitive = "isize")]
|
||||
|
||||
#[cfg(target_word_size = "32")] int_module! { isize, 32 }
|
||||
#[cfg(target_word_size = "64")] int_module! { isize, 64 }
|
@ -8,9 +8,12 @@
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
//! Operations and constants for architecture-sized unsigned integers (`uint` type)
|
||||
//! Deprecated: replaced by `usize`.
|
||||
//!
|
||||
//! The rollout of the new type will gradually take place over the
|
||||
//! alpha cycle along with the development of clearer conventions
|
||||
//! around integer types.
|
||||
|
||||
#![stable]
|
||||
#![doc(primitive = "uint")]
|
||||
#![deprecated = "replaced by usize"]
|
||||
|
||||
uint_module! { uint, int, ::int::BITS }
|
||||
|
20
src/libcore/num/usize.rs
Normal file
20
src/libcore/num/usize.rs
Normal file
@ -0,0 +1,20 @@
|
||||
// Copyright 2012-2015 The Rust Project Developers. See the COPYRIGHT
|
||||
// file at the top-level directory of this distribution and at
|
||||
// http://rust-lang.org/COPYRIGHT.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
//! Operations and constants for pointer-sized unsigned integers (`usize` type)
|
||||
//!
|
||||
//! This type was recently added to replace `uint`. The rollout of the
|
||||
//! new type will gradually take place over the alpha cycle along with
|
||||
//! the development of clearer conventions around integer types.
|
||||
|
||||
#![stable]
|
||||
#![doc(primitive = "usize")]
|
||||
|
||||
uint_module! { usize, isize, ::isize::BITS }
|
@ -201,12 +201,14 @@ mod int_macros;
|
||||
mod uint_macros;
|
||||
|
||||
#[path = "num/int.rs"] pub mod int;
|
||||
#[path = "num/isize.rs"] pub mod isize;
|
||||
#[path = "num/i8.rs"] pub mod i8;
|
||||
#[path = "num/i16.rs"] pub mod i16;
|
||||
#[path = "num/i32.rs"] pub mod i32;
|
||||
#[path = "num/i64.rs"] pub mod i64;
|
||||
|
||||
#[path = "num/uint.rs"] pub mod uint;
|
||||
#[path = "num/usize.rs"] pub mod usize;
|
||||
#[path = "num/u8.rs"] pub mod u8;
|
||||
#[path = "num/u16.rs"] pub mod u16;
|
||||
#[path = "num/u32.rs"] pub mod u32;
|
||||
|
@ -8,10 +8,13 @@
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
//! Operations and constants for architecture-sized signed integers (`int` type)
|
||||
//! Deprecated: replaced by `isize`.
|
||||
//!
|
||||
//! The rollout of the new type will gradually take place over the
|
||||
//! alpha cycle along with the development of clearer conventions
|
||||
//! around integer types.
|
||||
|
||||
#![stable]
|
||||
#![doc(primitive = "int")]
|
||||
#![deprecated = "replaced by isize"]
|
||||
|
||||
pub use core::int::{BITS, BYTES, MIN, MAX};
|
||||
|
||||
|
22
src/libstd/num/isize.rs
Normal file
22
src/libstd/num/isize.rs
Normal file
@ -0,0 +1,22 @@
|
||||
// Copyright 2012-2015 The Rust Project Developers. See the COPYRIGHT
|
||||
// file at the top-level directory of this distribution and at
|
||||
// http://rust-lang.org/COPYRIGHT.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
//! Operations and constants for pointer-sized signed integers (`isize` type)
|
||||
//!
|
||||
//! This type was recently added to replace `int`. The rollout of the
|
||||
//! new type will gradually take place over the alpha cycle along with
|
||||
//! the development of clearer conventions around integer types.
|
||||
|
||||
#![stable]
|
||||
#![doc(primitive = "isize")]
|
||||
|
||||
pub use core::isize::{BITS, BYTES, MIN, MAX};
|
||||
|
||||
int_module! { isize }
|
@ -8,10 +8,13 @@
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
//! Operations and constants for architecture-sized unsigned integers (`uint` type)
|
||||
//! Deprecated: replaced by `usize`.
|
||||
//!
|
||||
//! The rollout of the new type will gradually take place over the
|
||||
//! alpha cycle along with the development of clearer conventions
|
||||
//! around integer types.
|
||||
|
||||
#![stable]
|
||||
#![doc(primitive = "uint")]
|
||||
#![deprecated = "replaced by usize"]
|
||||
|
||||
pub use core::uint::{BITS, BYTES, MIN, MAX};
|
||||
|
||||
|
22
src/libstd/num/usize.rs
Normal file
22
src/libstd/num/usize.rs
Normal file
@ -0,0 +1,22 @@
|
||||
// Copyright 2012-2015 The Rust Project Developers. See the COPYRIGHT
|
||||
// file at the top-level directory of this distribution and at
|
||||
// http://rust-lang.org/COPYRIGHT.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
//! Operations and constants for pointer-sized unsigned integers (`usize` type)
|
||||
//!
|
||||
//! This type was recently added to replace `uint`. The rollout of the
|
||||
//! new type will gradually take place over the alpha cycle along with
|
||||
//! the development of clearer conventions around integer types.
|
||||
|
||||
#![stable]
|
||||
#![doc(primitive = "usize")]
|
||||
|
||||
pub use core::usize::{BITS, BYTES, MIN, MAX};
|
||||
|
||||
uint_module! { usize }
|
Loading…
x
Reference in New Issue
Block a user