- 12 11月, 2015 1 次提交
-
-
由 Kevin Butler 提交于
-
- 13 10月, 2015 1 次提交
-
-
由 Andrew Paseltiner 提交于
-
- 11 9月, 2015 2 次提交
-
-
由 Nick Cameron 提交于
-
由 Nick Cameron 提交于
-
- 06 9月, 2015 1 次提交
-
-
由 Niko Matsakis 提交于
-
- 18 8月, 2015 1 次提交
-
-
由 Martin Wernstål 提交于
-
- 17 8月, 2015 1 次提交
-
-
由 Martin Wernstål 提交于
-
- 16 8月, 2015 1 次提交
-
-
由 Alex Crichton 提交于
-
- 13 8月, 2015 1 次提交
-
-
由 Niko Matsakis 提交于
-
- 10 8月, 2015 1 次提交
-
-
由 Eli Friedman 提交于
Also fixes a few outdated links.
-
- 28 7月, 2015 1 次提交
-
-
由 Steve Klabnik 提交于
-
- 20 7月, 2015 1 次提交
-
-
由 Nick Cameron 提交于
-
- 09 7月, 2015 1 次提交
-
-
由 Ulrik Sverdrup 提交于
The common pattern `iter::repeat(elt).take(n).collect::<Vec<_>>()` is exactly equivalent to `vec![elt; n]`, do this replacement in the whole tree. (Actually, vec![] is smart enough to only call clone n - 1 times, while the former solution would call clone n times, and this fact is virtually irrelevant in practice.)
-
- 18 6月, 2015 1 次提交
-
-
由 Alex Crichton 提交于
This commit also deprecates the `as_string` and `as_slice` free functions in the `string` and `vec` modules.
-
- 11 6月, 2015 2 次提交
-
-
由 Joshua Landau 提交于
-
由 Joshua Landau 提交于
-
- 16 5月, 2015 1 次提交
-
-
由 Alex Crichton 提交于
Helps prevent mixed content warnings if accessing docs over HTTPS. Closes #25459
-
- 01 4月, 2015 1 次提交
-
-
由 Niko Matsakis 提交于
-
- 31 3月, 2015 1 次提交
-
-
由 Emeliov Dmitrii 提交于
-
- 27 3月, 2015 1 次提交
-
-
由 Alex Crichton 提交于
Now that support has been removed, all lingering use cases are renamed.
-
- 24 3月, 2015 3 次提交
-
-
由 Alex Crichton 提交于
-
由 Aaron Turon 提交于
This commit: * Introduces `std::convert`, providing an implementation of RFC 529. * Deprecates the `AsPath`, `AsOsStr`, and `IntoBytes` traits, all in favor of the corresponding generic conversion traits. Consequently, various IO APIs now take `AsRef<Path>` rather than `AsPath`, and so on. Since the types provided by `std` implement both traits, this should cause relatively little breakage. * Deprecates many `from_foo` constructors in favor of `from`. * Changes `PathBuf::new` to take no argument (creating an empty buffer, as per convention). The previous behavior is now available as `PathBuf::from`. * De-stabilizes `IntoCow`. It's not clear whether we need this separate trait. Closes #22751 Closes #14433 [breaking-change]
-
由 Brian Anderson 提交于
-
- 14 3月, 2015 1 次提交
-
-
由 Alex Crichton 提交于
-
- 06 3月, 2015 1 次提交
-
-
由 awlnx 提交于
-
- 03 3月, 2015 1 次提交
-
-
由 Ivan Petkov 提交于
* The lint visitor's visit_ty method did not recurse, and had a reference to the now closed #10894 * The newly enabled recursion has only affected the `deprectated` lint which now detects uses of deprecated items in trait impls and function return types * Renamed some references to `CowString` and `CowVec` to `Cow<str>` and `Cow<[T]>`, respectively, which appear outside of the crate which defines them * Replaced a few instances of `InvariantType<T>` with `PhantomData<Cell<T>>` * Disabled the `deprecated` lint in several places that reference/implement traits on deprecated items which will get cleaned up in the future * Disabled the `exceeding_bitshifts` lint for compile-fail/huge-array-simple test so it doesn't shadow the expected error on 32bit systems * Unfortunately, this means that if a library declares `#![deny(deprecated)]` and marks anything as deprecated, it will have to disable the lint for any uses of said item, e.g. any impl the now deprecated item For any library that denies deprecated items but has deprecated items of its own, this is a [breaking-change]
-
- 20 2月, 2015 1 次提交
-
-
由 Marvin Löbel 提交于
-
- 19 2月, 2015 3 次提交
-
-
由 Alex Crichton 提交于
-
由 Aaron Turon 提交于
This commit stabilizes `std::borrow`, making the following modifications to catch up the API with language changes: * It renames `BorrowFrom` to `Borrow`, as was originally intended (but blocked for technical reasons), and reorders the parameters accordingly. * It moves the type parameter of `ToOwned` to an associated type. This is somewhat less flexible, in that each borrowed type must have a unique owned type, but leads to a significant simplification for `Cow`. Flexibility can be regained by using newtyped slices, which is advisable for other reasons anyway. * It removes the owned type parameter from `Cow`, making the type much less verbose. * Deprecates the `is_owned` and `is_borrowed` predicates in favor of direct matching. The above API changes are relatively minor; the basic functionality remains the same, and essentially the whole module is now marked `#[stable]`. [breaking-change]
-
由 Niko Matsakis 提交于
-
- 18 2月, 2015 1 次提交
-
-
由 Alex Crichton 提交于
This commit renames the features for the `std::old_io` and `std::old_path` modules to `old_io` and `old_path` to help facilitate migration to the new APIs. This is a breaking change as crates which mention the old feature names now need to be renamed to use the new feature names. [breaking-change]
-
- 15 2月, 2015 1 次提交
-
-
由 Manish Goregaokar 提交于
-
- 06 2月, 2015 2 次提交
-
-
由 Jorge Aparicio 提交于
-
由 Jorge Aparicio 提交于
-
- 03 2月, 2015 2 次提交
-
-
由 Alfie John 提交于
-
由 Jorge Aparicio 提交于
-
- 31 1月, 2015 2 次提交
-
-
由 Alex Crichton 提交于
Also some tidying up of a bunch of crate attributes
-
由 Alex Crichton 提交于
This commit performs a final stabilization pass over the std::fmt module, marking all necessary APIs as stable. One of the more interesting aspects of this module is that it exposes a good deal of its runtime representation to the outside world in order for `format_args!` to be able to construct the format strings. Instead of hacking the compiler to assume that these items are stable, this commit instead lays out a story for the stabilization and evolution of these APIs. There are three primary details used by the `format_args!` macro: 1. `Arguments` - an opaque package of a "compiled format string". This structure is passed around and the `write` function is the source of truth for transforming a compiled format string into a string at runtime. This must be able to be constructed in stable code. 2. `Argument` - an opaque structure representing an argument to a format string. This is *almost* a trait object as it's just a pointer/function pair, but due to the function originating from one of many traits, it's not actually a trait object. Like `Arguments`, this must be constructed from stable code. 3. `fmt::rt` - this module contains the runtime type definitions primarily for the `rt::Argument` structure. Whenever an argument is formatted with nonstandard flags, a corresponding `rt::Argument` is generated describing how the argument is being formatted. This can be used to construct an `Arguments`. The primary interface to `std::fmt` is the `Arguments` structure, and as such this type name is stabilize as-is today. It is expected for libraries to pass around an `Arguments` structure to represent a pending formatted computation. The remaining portions are largely "cruft" which would rather not be stabilized, but due to the stability checks they must be. As a result, almost all pieces have been renamed to represent that they are "version 1" of the formatting representation. The theory is that at a later date if we change the representation of these types we can add new definitions called "version 2" and corresponding constructors for `Arguments`. One of the other remaining large questions about the fmt module were how the pending I/O reform would affect the signatures of methods in the module. Due to [RFC 526][rfc], however, the writers of fmt are now incompatible with the writers of io, so this question has largely been solved. As a result the interfaces are largely stabilized as-is today. [rfc]: https://github.com/rust-lang/rfcs/blob/master/text/0526-fmt-text-writer.md Specifically, the following changes were made: * The contents of `fmt::rt` were all moved under `fmt::rt::v1` * `fmt::rt` is stable * `fmt::rt::v1` is stable * `Error` is stable * `Writer` is stable * `Writer::write_str` is stable * `Writer::write_fmt` is stable * `Formatter` is stable * `Argument` has been renamed to `ArgumentV1` and is stable * `ArgumentV1::new` is stable * `ArgumentV1::from_uint` is stable * `Arguments::new_v1` is stable (renamed from `new`) * `Arguments::new_v1_formatted` is stable (renamed from `with_placeholders`) * All formatting traits are now stable, as well as the `fmt` method. * `fmt::write` is stable * `fmt::format` is stable * `Formatter::pad_integral` is stable * `Formatter::pad` is stable * `Formatter::write_str` is stable * `Formatter::write_fmt` is stable * Some assorted top level items which were only used by `format_args!` were removed in favor of static functions on `ArgumentV1` as well. * The formatting-flag-accessing methods remain unstable Within the contents of the `fmt::rt::v1` module, the following actions were taken: * Reexports of all enum variants were removed * All prefixes on enum variants were removed * A few miscellaneous enum variants were renamed * Otherwise all structs, fields, and variants were marked stable. In addition to these actions in the `std::fmt` module, many implementations of `Show` and `String` were stabilized as well. In some other modules: * `ToString` is now stable * `ToString::to_string` is now stable * `Vec` no longer implements `fmt::Writer` (this has moved to `String`) This is a breaking change due to all of the changes to the `fmt::rt` module, but this likely will not have much impact on existing programs. Closes #20661 [breaking-change]
-
- 29 1月, 2015 2 次提交
-
-
由 Jorge Aparicio 提交于
-
由 Jorge Aparicio 提交于
-