SourceIdInner {
kind: Kind::Git(ref reference), ref url, ref precise, ..
} => {
- let ref_str = url_ref(reference);
+ let ref_str = reference.url_ref();
let precise_str = if precise.is_some() {
format!("#{}", precise.as_ref().unwrap())
}
SourceIdInner { kind: Kind::Git(ref reference), ref url,
ref precise, .. } => {
- try!(write!(f, "{}{}", url, url_ref(reference)));
+ try!(write!(f, "{}{}", url, reference.url_ref()));
if let Some(ref s) = *precise {
let len = cmp::min(s.len(), 8);
}
}
-fn url_ref(r: &GitReference) -> String {
- match r.to_ref_string() {
- None => "".to_string(),
- Some(s) => format!("?{}", s),
- }
-}
-
impl GitReference {
pub fn to_ref_string(&self) -> Option<String> {
match *self {
GitReference::Rev(ref s) => Some(format!("rev={}", s)),
}
}
+
+ fn url_ref(&self) -> String {
+ match self.to_ref_string() {
+ None => "".to_string(),
+ Some(s) => format!("?{}", s),
+ }
+ }
}
pub struct SourceMap<'src> {