mirror of
https://github.com/isar/rusqlite.git
synced 2024-11-22 16:29:20 +08:00
Merge pull request #1158 from nvzqz/sqlite-error
Add `Error` methods to get SQLite error values
This commit is contained in:
commit
f54e550b2b
18
src/error.rs
18
src/error.rs
@ -335,6 +335,24 @@ impl error::Error for Error {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl Error {
|
||||||
|
/// Returns the underlying SQLite error if this is [`Error::SqliteFailure`].
|
||||||
|
#[inline]
|
||||||
|
pub fn sqlite_error(&self) -> Option<&ffi::Error> {
|
||||||
|
match self {
|
||||||
|
Self::SqliteFailure(error, _) => Some(error),
|
||||||
|
_ => None,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Returns the underlying SQLite error code if this is
|
||||||
|
/// [`Error::SqliteFailure`].
|
||||||
|
#[inline]
|
||||||
|
pub fn sqlite_error_code(&self) -> Option<ffi::ErrorCode> {
|
||||||
|
self.sqlite_error().map(|error| error.code)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// These are public but not re-exported by lib.rs, so only visible within crate.
|
// These are public but not re-exported by lib.rs, so only visible within crate.
|
||||||
|
|
||||||
#[cold]
|
#[cold]
|
||||||
|
Loading…
Reference in New Issue
Block a user