summaryrefslogtreecommitdiffstats
path: root/openpgp/src/tpk/mod.rs
diff options
context:
space:
mode:
authorJustus Winter <justus@sequoia-pgp.org>2019-08-26 14:48:12 +0200
committerJustus Winter <justus@sequoia-pgp.org>2019-08-26 16:00:49 +0200
commit86e2cb5263a23fe78a49163f0e798efc349ca89e (patch)
tree070167129b99a3b7f5642ccbe84ee36b7a7d31d2 /openpgp/src/tpk/mod.rs
parent86806951896d44a40b30ad4b10d2ea87c6140e45 (diff)
openpgp: Implement FromStr for some types.
- This implements std::str::FromStr for types that have string-representations and are reasonably likely to be encountered by downstream users, e.g. fingerprints or messages. This allows us to do `"xxx".parse()?`. - Fixes #320.
Diffstat (limited to 'openpgp/src/tpk/mod.rs')
-rw-r--r--openpgp/src/tpk/mod.rs8
1 files changed, 8 insertions, 0 deletions
diff --git a/openpgp/src/tpk/mod.rs b/openpgp/src/tpk/mod.rs
index fb1ae43e..29f59da2 100644
--- a/openpgp/src/tpk/mod.rs
+++ b/openpgp/src/tpk/mod.rs
@@ -368,6 +368,14 @@ impl<'a> Parse<'a, TPKParser<'a, vec::IntoIter<Packet>>>
}
}
+impl std::str::FromStr for TPK {
+ type Err = failure::Error;
+
+ fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
+ Self::from_bytes(s.as_bytes())
+ }
+}
+
impl<'a, I: Iterator<Item=Packet>> TPKParser<'a, I> {
/// Initializes a TPKParser from an iterator over Packets.
pub fn from_iter(iter: I) -> Self {