It should not receive such an update. There's no reason for the library to require a string allocated on the heap. On May 26, 2014 3:31 AM, "Urban Hafner" <[email protected]> wrote:
> Thanks guys, I now use "as_slice()" when necessary. And hopefully in the > future the regular expression library will be updated to work on StrBuf > instead of &str as this seems to be the main use case (read in file, run > regexp on it). > > Urban > > > On Mon, May 26, 2014 at 8:58 AM, Vladimir Matveev > <[email protected]>wrote: > >> > My suspicion is that the automatic conversion will come back at some >> > point, but I'm not sure. >> >> I think it will be possible to make `String` implement `Deref<str>` >> when DST land. Then it will be possible to convert from `String` to >> `&str` using explicit reborrowing: >> >> let sgf_slice = &*sgf; >> >> I'm not sure this will be fully automatic when `String` is an >> arbitrary actual argument to arbitrary function, however. >> >> 2014-05-26 10:36 GMT+04:00 Andrew Gallant <[email protected]>: >> > Try using `self.sgf.as_slice()` instead. >> > >> > The change is necessary, AFAIK, because `~str` would automatically be >> > converted to a borrowed reference without having to explicitly call the >> > `as_slice` method. This doesn't happen for the StrBuf (and what is now >> > String, I think) type. >> > >> > My suspicion is that the automatic conversion will come back at some >> > point, but I'm not sure. >> > >> > - Andrew >> > >> > >> > On Mon, May 26, 2014 at 2:32 AM, Urban Hafner <[email protected]> >> wrote: >> >> Hello there, >> >> >> >> I just updated the compiler (I use the git master branch) and now when >> I >> >> read in a file I get a StrBuf instead of a ~str. That is easy enough to >> >> change, but how do I use regular expressions now? I have the following >> in my >> >> code: >> >> >> >> let re = regex!(r"SZ\[(\d+)\]"); >> >> let captures = re.captures(self.sgf).unwrap(); >> >> >> >> And it fails now because "self.sgf" is a StrBuf instead of a &str. Do >> I have >> >> just a Rust compiler that is somewhere in between (i.e. not everything >> has >> >> been changed to StrBuf) or is this intentional? And if so, what's the >> best >> >> way to use regular expressions now? >> >> >> >> Urban >> >> -- >> >> Freelancer >> >> >> >> Available for hire for Ruby, Ruby on Rails, and JavaScript projects >> >> >> >> More at http://urbanhafner.com >> >> >> >> _______________________________________________ >> >> Rust-dev mailing list >> >> [email protected] >> >> https://mail.mozilla.org/listinfo/rust-dev >> >> >> > _______________________________________________ >> > Rust-dev mailing list >> > [email protected] >> > https://mail.mozilla.org/listinfo/rust-dev >> > > > > -- > Freelancer > > Available for hire for Ruby, Ruby on Rails, and JavaScript projects > > More at http://urbanhafner.com >
_______________________________________________ Rust-dev mailing list [email protected] https://mail.mozilla.org/listinfo/rust-dev
