<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/src/libcore/str/mod.rs, branch 1.35.0</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=1.35.0</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=1.35.0'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2019-03-22T18:56:08+00:00</updated>
<entry>
<title>add suggestions to trim_{left,right} deprecations</title>
<updated>2019-03-22T18:56:08+00:00</updated>
<author>
<name>Andy Russell</name>
<email>arussell123@gmail.com</email>
</author>
<published>2019-03-22T18:56:08+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=b34a71b7daf0f770cd5e7f9c36be960e32d2b167'/>
<id>urn:sha1:b34a71b7daf0f770cd5e7f9c36be960e32d2b167</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Improvements to comments in libstd, libcore, liballoc.</title>
<updated>2019-03-11T02:25:44+00:00</updated>
<author>
<name>Alexander Regueiro</name>
<email>alexreg@me.com</email>
</author>
<published>2019-02-09T22:16:58+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=8629fd3e4e5184852352ea1bb18bb1c8465ffac3'/>
<id>urn:sha1:8629fd3e4e5184852352ea1bb18bb1c8465ffac3</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Replace `s` with `self` in docs for str methods taking self.</title>
<updated>2019-02-27T16:07:35+00:00</updated>
<author>
<name>Trevor Spiteri</name>
<email>tspiteri@ieee.org</email>
</author>
<published>2019-02-20T14:11:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=b70a9532a9d3e2ae4b9bf7bc4a4a0bfc7dbe134b'/>
<id>urn:sha1:b70a9532a9d3e2ae4b9bf7bc4a4a0bfc7dbe134b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rollup merge of #58553 - scottmcm:more-ihle, r=Centril</title>
<updated>2019-02-20T03:59:10+00:00</updated>
<author>
<name>kennytm</name>
<email>kennytm@gmail.com</email>
</author>
<published>2019-02-19T17:13:39+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=e3a8f7db479ce6562bfc312f412b65dc4f3c77d5'/>
<id>urn:sha1:e3a8f7db479ce6562bfc312f412b65dc4f3c77d5</id>
<content type='text'>
Use more impl header lifetime elision

Inspired by seeing explicit lifetimes on these two:

- https://doc.rust-lang.org/nightly/std/slice/struct.Iter.html#impl-FusedIterator
- https://doc.rust-lang.org/nightly/std/primitive.u32.html#impl-Not

And a follow-up to https://github.com/rust-lang/rust/pull/54687, that started using IHLE in libcore.

Most of the changes in here fall into two big categories:

- Removing lifetimes from common traits that can essentially never user a lifetime from an input (particularly `Drop`, `Debug`, and `Clone`)

- Forwarding impls that are only possible because the lifetime doesn't matter (like `impl&lt;R: Read + ?Sized&gt; Read for &amp;mut R`)

I omitted things that seemed like they could be more controversial, like the handful of iterators that have a `Item: 'static` despite the iterator having a lifetime or the `PartialEq` implementations [where the flipped one cannot elide the lifetime](https://internals.rust-lang.org/t/impl-type-parameter-aliases/9403/2?u=scottmcm).

I also removed two lifetimes that turned out to be completely unused; see https://github.com/rust-lang/rust/issues/41960#issuecomment-464557423
</content>
</entry>
<entry>
<title>Use more impl header lifetime elision</title>
<updated>2019-02-18T03:42:36+00:00</updated>
<author>
<name>Scott McMurray</name>
<email>scottmcm@users.noreply.github.com</email>
</author>
<published>2019-02-18T03:42:36+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=3bea2ca49d24606920b3a81811379debc0668992'/>
<id>urn:sha1:3bea2ca49d24606920b3a81811379debc0668992</id>
<content type='text'>
There are two big categories of changes in here

- Removing lifetimes from common traits that can essentially never user a lifetime from an input (particularly `Drop` &amp; `Debug`)
- Forwarding impls that are only possible because the lifetime doesn't matter (like `impl&lt;R: Read + ?Sized&gt; Read for &amp;mut R`)

I omitted things that seemed like they could be more controversial, like the handful of iterators that have a `Item: 'static` despite the iterator having a lifetime or the `PartialEq` implementations where the flipped one cannot elide the lifetime.
</content>
</entry>
<entry>
<title>Rollup merge of #58200 - RalfJung:str-as-mut-ptr, r=SimonSapin</title>
<updated>2019-02-13T03:37:03+00:00</updated>
<author>
<name>Mazdak Farrokhzad</name>
<email>twingoow@gmail.com</email>
</author>
<published>2019-02-13T03:37:03+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=ecb650316983697cca65b9b265692e4385a67d9c'/>
<id>urn:sha1:ecb650316983697cca65b9b265692e4385a67d9c</id>
<content type='text'>
fix str mutating through a ptr derived from &amp;self

Found by Miri: In `get_unchecked_mut` (also used by the checked variants internally) uses `str::as_ptr` to create a mutable reference, but `as_ptr` takes `&amp;self`.  This means the mutable references we return here got created from a shared reference, which violates the shared-references-are-read-only discipline!

For this by using a newly introduced `as_mut_ptr` instead.
</content>
</entry>
<entry>
<title>Auto merge of #58051 - SimonSapin:str_escape, r=alexcrichton</title>
<updated>2019-02-12T23:30:16+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2019-02-12T23:30:16+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=0f949c2fcc696d0260a99196d5e5400c59a26a54'/>
<id>urn:sha1:0f949c2fcc696d0260a99196d5e5400c59a26a54</id>
<content type='text'>
Stabilize str::escape_* methods with new return types…

… that implement `Display` and `Iterator&lt;Item=char&gt;`, as proposed in FCP: https://github.com/rust-lang/rust/issues/27791#issuecomment-376864727
</content>
</entry>
<entry>
<title>Add doctests for str::escape_*</title>
<updated>2019-02-12T08:55:30+00:00</updated>
<author>
<name>Simon Sapin</name>
<email>simon.sapin@exyr.org</email>
</author>
<published>2019-02-02T10:25:46+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=eb158f93505dbc265787ac671cbc728c80f8a39d'/>
<id>urn:sha1:eb158f93505dbc265787ac671cbc728c80f8a39d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Move str::escape_* to libcore</title>
<updated>2019-02-12T08:55:30+00:00</updated>
<author>
<name>Simon Sapin</name>
<email>simon.sapin@exyr.org</email>
</author>
<published>2019-02-02T09:34:36+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=92cce78d066676f49524c07f72c7cdbf49cc0de8'/>
<id>urn:sha1:92cce78d066676f49524c07f72c7cdbf49cc0de8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add internal impl_fn_for_zst macro for "named closure types"</title>
<updated>2019-02-12T08:55:20+00:00</updated>
<author>
<name>Simon Sapin</name>
<email>simon.sapin@exyr.org</email>
</author>
<published>2019-02-01T11:43:29+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=92dcae47425a9084b97680bc0327ac88353b8a68'/>
<id>urn:sha1:92dcae47425a9084b97680bc0327ac88353b8a68</id>
<content type='text'>
</content>
</entry>
</feed>
