comparison rust/hg-core/src/utils.rs @ 49632:29cf3167e459

hg-core: remove unneeded trait now that we support Rust 1.52+
author Raphaël Gomès <rgomes@octobus.net>
date Mon, 14 Nov 2022 15:29:58 +0100
parents 5734b03ecf3e
children 048f829a445a
comparison
equal deleted inserted replaced
49631:c7fb9b74e753 49632:29cf3167e459
140 if let Some(pos) = find_slice_in_slice(self, separator) { 140 if let Some(pos) = find_slice_in_slice(self, separator) {
141 Some((&self[..pos], &self[pos + separator.len()..])) 141 Some((&self[..pos], &self[pos + separator.len()..]))
142 } else { 142 } else {
143 None 143 None
144 } 144 }
145 }
146 }
147
148 pub trait StrExt {
149 // TODO: Use https://doc.rust-lang.org/nightly/std/primitive.str.html#method.split_once
150 // once we require Rust 1.52+
151 fn split_2(&self, separator: char) -> Option<(&str, &str)>;
152 }
153
154 impl StrExt for str {
155 fn split_2(&self, separator: char) -> Option<(&str, &str)> {
156 let mut iter = self.splitn(2, separator);
157 let a = iter.next()?;
158 let b = iter.next()?;
159 Some((a, b))
160 } 145 }
161 } 146 }
162 147
163 pub trait Escaped { 148 pub trait Escaped {
164 /// Return bytes escaped for display to the user 149 /// Return bytes escaped for display to the user