Add #[non_exhaustive] to enums that might get new variants. (#673)

This just using them in patterns without a catchall. I left things alone
that seem very unlikely to change (`Value`, `ValueRef`, `DatabaseName`,
etc...). This might help reduce the number of breaking changes we need
(rusqlite is still pre-1.0 so it doesn't really matter that much, but
breaking changes complicate the story around when we can cut releases).
This commit is contained in:
Thom Chiovoloni
2020-04-06 12:01:39 -07:00
committed by GitHub
parent 3196989f0d
commit 6f6f7ffd9f
12 changed files with 14 additions and 0 deletions

View File

@@ -638,6 +638,7 @@ impl Connection {
/// `feature = "session"` Constants passed to the conflict handler
#[repr(i32)]
#[derive(Debug, PartialEq)]
#[non_exhaustive]
pub enum ConflictType {
UNKNOWN = -1,
SQLITE_CHANGESET_DATA = ffi::SQLITE_CHANGESET_DATA,
@@ -662,6 +663,7 @@ impl From<i32> for ConflictType {
/// `feature = "session"` Constants returned by the conflict handler
#[repr(i32)]
#[derive(Debug, PartialEq)]
#[non_exhaustive]
pub enum ConflictAction {
SQLITE_CHANGESET_OMIT = ffi::SQLITE_CHANGESET_OMIT,
SQLITE_CHANGESET_REPLACE = ffi::SQLITE_CHANGESET_REPLACE,