Skip to content

Commit b1e7d49

Browse files
committed
Generalized implementation of FromBase64
Previously, FromBase64 was only implemented on ~[u8] and ~str when any pointer would do. The implementations of FromBase64 are now consistent with the implementations of ToBase64.
1 parent e3d0c1e commit b1e7d49

File tree

1 file changed

+16
-16
lines changed

1 file changed

+16
-16
lines changed

src/libextra/base64.rs

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ pub trait FromBase64 {
113113
fn from_base64(&self) -> ~[u8];
114114
}
115115

116-
impl FromBase64 for ~[u8] {
116+
impl<'self> FromBase64 for &'self [u8] {
117117
/**
118118
* Convert base64 `u8` vector into u8 byte values.
119119
* Every 4 encoded characters is converted into 3 octets, modulo padding.
@@ -188,7 +188,7 @@ impl FromBase64 for ~[u8] {
188188
}
189189
}
190190

191-
impl FromBase64 for ~str {
191+
impl<'self> FromBase64 for &'self str {
192192
/**
193193
* Convert any base64 encoded string (literal, `@`, `&`, or `~`)
194194
* to the byte values it encodes.
@@ -227,23 +227,23 @@ mod tests {
227227

228228
#[test]
229229
fn test_to_base64() {
230-
assert_eq!((~"").to_base64(), ~"");
231-
assert!((~"f").to_base64() == ~"Zg==");
232-
assert_eq!((~"fo").to_base64(), ~"Zm8=");
233-
assert_eq!((~"foo").to_base64(), ~"Zm9v");
234-
assert!((~"foob").to_base64() == ~"Zm9vYg==");
235-
assert_eq!((~"fooba").to_base64(), ~"Zm9vYmE=");
236-
assert_eq!((~"foobar").to_base64(), ~"Zm9vYmFy");
230+
assert_eq!("".to_base64(), ~"");
231+
assert_eq!("f".to_base64(), ~"Zg==");
232+
assert_eq!("fo".to_base64(), ~"Zm8=");
233+
assert_eq!("foo".to_base64(), ~"Zm9v");
234+
assert_eq!("foob".to_base64(), ~"Zm9vYg==");
235+
assert_eq!("fooba".to_base64(), ~"Zm9vYmE=");
236+
assert_eq!("foobar".to_base64(), ~"Zm9vYmFy");
237237
}
238238

239239
#[test]
240240
fn test_from_base64() {
241-
assert_eq!((~"").from_base64(), str::to_bytes(""));
242-
assert!((~"Zg==").from_base64() == str::to_bytes("f"));
243-
assert_eq!((~"Zm8=").from_base64(), str::to_bytes("fo"));
244-
assert_eq!((~"Zm9v").from_base64(), str::to_bytes("foo"));
245-
assert!((~"Zm9vYg==").from_base64() == str::to_bytes("foob"));
246-
assert_eq!((~"Zm9vYmE=").from_base64(), str::to_bytes("fooba"))
247-
assert_eq!((~"Zm9vYmFy").from_base64(), str::to_bytes("foobar"));
241+
assert_eq!("".from_base64(), str::to_bytes(""));
242+
assert_eq!("Zg==".from_base64(), str::to_bytes("f"));
243+
assert_eq!("Zm8=".from_base64(), str::to_bytes("fo"));
244+
assert_eq!("Zm9v".from_base64(), str::to_bytes("foo"));
245+
assert_eq!("Zm9vYg==".from_base64(), str::to_bytes("foob"));
246+
assert_eq!("Zm9vYmE=".from_base64(), str::to_bytes("fooba"))
247+
assert_eq!("Zm9vYmFy".from_base64(), str::to_bytes("foobar"));
248248
}
249249
}

0 commit comments

Comments
 (0)