summaryrefslogtreecommitdiffstats
path: root/openpgp/src/message/mod.rs
diff options
context:
space:
mode:
authorJustus Winter <justus@sequoia-pgp.org>2020-01-07 11:32:47 +0100
committerJustus Winter <justus@sequoia-pgp.org>2020-01-07 11:54:42 +0100
commit15c26e549b53b2f94ad2d90e19bfa62c427ebed8 (patch)
tree0aecfe97aef1d442e42ea51dc674c0fdec93f332 /openpgp/src/message/mod.rs
parent356dc89f31683752cd0ebbc8720cc621190df67f (diff)
openpgp: Mark enum MessageParserError non-exhaustive.
- See #405.
Diffstat (limited to 'openpgp/src/message/mod.rs')
-rw-r--r--openpgp/src/message/mod.rs8
1 files changed, 8 insertions, 0 deletions
diff --git a/openpgp/src/message/mod.rs b/openpgp/src/message/mod.rs
index 0839d482..5e1c2fba 100644
--- a/openpgp/src/message/mod.rs
+++ b/openpgp/src/message/mod.rs
@@ -36,12 +36,19 @@ use lalrpop_util::ParseError;
use self::grammar::MessageParser;
/// Errors that MessageValidator::check may return.
+///
+/// Note: This enum cannot be exhaustively matched to allow future
+/// extensions.
#[derive(Debug, Clone)]
pub enum MessageParserError {
/// A parser error.
Parser(ParseError<usize, Token, LexicalError>),
/// An OpenPGP error.
OpenPGP(Error),
+
+ /// This marks this enum as non-exhaustive. Do not use this
+ /// variant.
+ #[doc(hidden)] __Nonexhaustive,
}
impl From<MessageParserError> for failure::Error {
@@ -49,6 +56,7 @@ impl From<MessageParserError> for failure::Error {
match err {
MessageParserError::Parser(p) => p.into(),
MessageParserError::OpenPGP(p) => p.into(),
+ MessageParserError::__Nonexhaustive => unreachable!(),
}
}
}