aboutsummaryrefslogtreecommitdiffstats
path: root/src/message.rs
diff options
context:
space:
mode:
authorDirk Van Haerenborgh <vhdirk@gmail.com>2018-10-29 23:25:37 +0100
committerDirk Van Haerenborgh <vhdirk@gmail.com>2018-10-29 23:25:37 +0100
commit7d2c7b44508291b319d95e8689e9cabf8760bef4 (patch)
tree3112a992cf53c49b7188d24faa9be22607def230 /src/message.rs
parent29a30f26523bc50a792dc917938b71049de025aa (diff)
downloadmail-7d2c7b44508291b319d95e8689e9cabf8760bef4.tar.gz
bind type param to lifetime
Diffstat (limited to 'src/message.rs')
-rw-r--r--src/message.rs16
1 files changed, 8 insertions, 8 deletions
diff --git a/src/message.rs b/src/message.rs
index 2825c1a..af04cec 100644
--- a/src/message.rs
+++ b/src/message.rs
@@ -34,17 +34,17 @@ impl Drop for MessagePtr {
}
#[derive(Debug)]
-pub struct Message<'o, Owner: MessageOwner>{
+pub struct Message<'o, Owner: MessageOwner + 'o>{
pub(crate) handle: MessagePtr,
phantom: PhantomData<&'o Owner>,
}
-impl<'o, Owner: MessageOwner> MessagesOwner for Message<'o, Owner>{}
-impl<'o, Owner: MessageOwner> FilenamesOwner for Message<'o, Owner>{}
-impl<'o, Owner: MessageOwner> TagsOwner for Message<'o, Owner>{}
+impl<'o, Owner: MessageOwner + 'o> MessagesOwner for Message<'o, Owner>{}
+impl<'o, Owner: MessageOwner + 'o> FilenamesOwner for Message<'o, Owner>{}
+impl<'o, Owner: MessageOwner + 'o> TagsOwner for Message<'o, Owner>{}
-impl<'o, Owner: MessageOwner> FromPtr<*mut ffi::notmuch_message_t> for Message<'o, Owner> {
+impl<'o, Owner: MessageOwner + 'o> FromPtr<*mut ffi::notmuch_message_t> for Message<'o, Owner> {
fn from_ptr(ptr: *mut ffi::notmuch_message_t) -> Message<'o, Owner> {
Message{
handle: MessagePtr{ptr},
@@ -53,7 +53,7 @@ impl<'o, Owner: MessageOwner> FromPtr<*mut ffi::notmuch_message_t> for Message<'
}
}
-impl<'o, Owner: MessageOwner> Message<'o, Owner>{
+impl<'o, Owner: MessageOwner + 'o> Message<'o, Owner>{
pub fn id(self: &Self) -> String{
let mid = unsafe {
@@ -113,5 +113,5 @@ impl<'o, Owner: MessageOwner> Message<'o, Owner>{
}
}
-unsafe impl<'o, Owner: MessageOwner> Send for Message<'o, Owner>{}
-unsafe impl<'o, Owner: MessageOwner> Sync for Message<'o, Owner>{}
+unsafe impl<'o, Owner: MessageOwner + 'o> Send for Message<'o, Owner>{}
+unsafe impl<'o, Owner: MessageOwner + 'o> Sync for Message<'o, Owner>{}