diff options
| author | eaon <eaon@mit.edu> | 2018-11-12 13:58:50 +0100 |
|---|---|---|
| committer | eaon <eaon@mit.edu> | 2018-11-12 13:58:50 +0100 |
| commit | ba03b994b3318c84923f4a9a23cfc4270a5ace75 (patch) | |
| tree | bef4b10c329d66fde11e4eea8b1300fd7cb2385a /src/filenames.rs | |
| parent | 9402ef4cf81e711ca59a1cc24748c6d6c8f7071e (diff) | |
| download | mail-ba03b994b3318c84923f4a9a23cfc4270a5ace75.tar.gz | |
Switch to `where` syntax
Diffstat (limited to 'src/filenames.rs')
| -rw-r--r-- | src/filenames.rs | 29 |
1 files changed, 19 insertions, 10 deletions
diff --git a/src/filenames.rs b/src/filenames.rs index ae90280..3eef82d 100644 --- a/src/filenames.rs +++ b/src/filenames.rs @@ -25,16 +25,22 @@ impl Drop for FilenamesPtr { } #[derive(Debug)] -pub struct Filenames<'o, Owner: FilenamesOwner + 'o> { +pub struct Filenames<'o, O> +where + O: FilenamesOwner + 'o, +{ pub(crate) handle: FilenamesPtr, - pub(crate) marker: Phantomcow<'o, Owner>, + pub(crate) marker: Phantomcow<'o, O>, } -impl<'o, Owner: FilenamesOwner + 'o> Filenames<'o, Owner> { - pub fn from_ptr<O: Into<Phantomcow<'o, Owner>>>( - ptr: *mut ffi::notmuch_filenames_t, - owner: O, - ) -> Filenames<'o, Owner> { +impl<'o, O> Filenames<'o, O> +where + O: FilenamesOwner + 'o, +{ + pub fn from_ptr<P>(ptr: *mut ffi::notmuch_filenames_t, owner: P) -> Filenames<'o, O> + where + P: Into<Phantomcow<'o, O>>, + { Filenames { handle: FilenamesPtr { ptr }, marker: owner.into(), @@ -42,7 +48,10 @@ impl<'o, Owner: FilenamesOwner + 'o> Filenames<'o, Owner> { } } -impl<'o, Owner: FilenamesOwner + 'o> Iterator for Filenames<'o, Owner> { +impl<'o, O> Iterator for Filenames<'o, O> +where + O: FilenamesOwner + 'o, +{ type Item = PathBuf; fn next(self: &mut Self) -> Option<Self::Item> { @@ -62,5 +71,5 @@ impl<'o, Owner: FilenamesOwner + 'o> Iterator for Filenames<'o, Owner> { } } -unsafe impl<'o, Owner: FilenamesOwner + 'o> Send for Filenames<'o, Owner> {} -unsafe impl<'o, Owner: FilenamesOwner + 'o> Sync for Filenames<'o, Owner> {} +unsafe impl<'o, O> Send for Filenames<'o, O> where O: FilenamesOwner + 'o {} +unsafe impl<'o, O> Sync for Filenames<'o, O> where O: FilenamesOwner + 'o {} |
