Skip to content

Commit 2fe3350

Browse files
committed
Send + Sync bounds on TryInsertError
1 parent 7582baf commit 2fe3350

File tree

1 file changed

+9
-2
lines changed

1 file changed

+9
-2
lines changed

crates/bindings/src/table.rs

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -217,7 +217,14 @@ impl<Tbl: Table> fmt::Display for TryInsertError<Tbl> {
217217
}
218218
}
219219

220-
impl<Tbl: Table> std::error::Error for TryInsertError<Tbl> {}
220+
impl<Tbl: Table> std::error::Error for TryInsertError<Tbl> {
221+
fn source(&self) -> Option<&(dyn std::error::Error + 'static)> {
222+
Some(match self {
223+
Self::UniqueConstraintViolation(e) => e,
224+
Self::AutoIncOverflow(e) => e,
225+
})
226+
}
227+
}
221228

222229
impl<Tbl: Table> From<TryInsertError<Tbl>> for String {
223230
fn from(err: TryInsertError<Tbl>) -> Self {
@@ -226,7 +233,7 @@ impl<Tbl: Table> From<TryInsertError<Tbl>> for String {
226233
}
227234

228235
#[doc(hidden)]
229-
pub trait MaybeError<E = Self>: std::error::Error + Sized {
236+
pub trait MaybeError<E = Self>: std::error::Error + Send + Sync + Sized + 'static {
230237
fn get() -> Option<Self>;
231238
}
232239

0 commit comments

Comments
 (0)