aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoreaon <eaon@mit.edu>2018-12-09 18:48:24 +0100
committereaon <eaon@mit.edu>2018-12-09 18:54:41 +0100
commitb5b0f7e97abe0dbd5b54a1fc69e764a124c271b2 (patch)
tree54c4add85514a3ccb718985682b7c8312c4a5128
parentc3d26cd116b51687b2fa43a22d3d0c2856cb093b (diff)
downloadmail-b5b0f7e97abe0dbd5b54a1fc69e764a124c271b2.tar.gz
Edition 2018 hit stable 🙌
-rw-r--r--Cargo.toml1
-rw-r--r--src/database.rs20
-rw-r--r--src/directory.rs10
-rw-r--r--src/error.rs6
-rw-r--r--src/ffi.rs6
-rw-r--r--src/filenames.rs4
-rw-r--r--src/lib.rs28
-rw-r--r--src/message.rs26
-rw-r--r--src/messages.rs14
-rw-r--r--src/query.rs20
-rw-r--r--src/tags.rs4
-rw-r--r--src/thread.rs20
-rw-r--r--src/threads.rs10
-rw-r--r--tests/main.rs8
14 files changed, 89 insertions, 88 deletions
diff --git a/Cargo.toml b/Cargo.toml
index 6cfd5a4..30e26c0 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -7,6 +7,7 @@ repository = "https://github.com/vhdirk/notmuch-rs"
description = "Rust interface and bindings for notmuch"
license = "GPL-3.0+"
readme = "README.md"
+edition = "2018"
[badges]
travis-ci = { repository = "vhdirk/notmuch-rs" }
diff --git a/src/database.rs b/src/database.rs
index 102a7a9..fe9a39b 100644
--- a/src/database.rs
+++ b/src/database.rs
@@ -7,18 +7,18 @@ use supercow::Supercow;
use libc;
-use error::{Error, Result};
-use ffi;
-use ffi::Status;
-use query::QueryPtr;
-use utils::ToStr;
-use Directory;
-use Query;
-use Tags;
-use TagsOwner;
+use crate::error::{Error, Result};
+use crate::ffi;
+use crate::ffi::Status;
+use crate::query::QueryPtr;
+use crate::utils::ToStr;
+use crate::Directory;
+use crate::Query;
+use crate::Tags;
+use crate::TagsOwner;
// Re-exported under database module for pretty namespacin'.
-pub use ffi::DatabaseMode;
+pub use crate::ffi::DatabaseMode;
#[derive(Copy, Clone, Debug)]
pub struct Version(libc::c_uint);
diff --git a/src/directory.rs b/src/directory.rs
index e3abcf5..be2ea5c 100644
--- a/src/directory.rs
+++ b/src/directory.rs
@@ -1,10 +1,10 @@
use std::ops::Drop;
use supercow::{Phantomcow, Supercow};
-use ffi;
-use Database;
-use Filenames;
-use FilenamesOwner;
+use crate::ffi;
+use crate::Database;
+use crate::Filenames;
+use crate::FilenamesOwner;
#[derive(Debug)]
pub(crate) struct DirectoryPtr {
@@ -36,7 +36,7 @@ impl<'d> Directory<'d> {
}
}
- pub fn child_directories(&self) -> Filenames<Self> {
+ pub fn child_directories(&self) -> Filenames<'_, Self> {
<Self as DirectoryExt>::child_directories(self)
}
}
diff --git a/src/error.rs b/src/error.rs
index 6de4236..33e1f78 100644
--- a/src/error.rs
+++ b/src/error.rs
@@ -1,7 +1,7 @@
use std;
use std::{error, fmt, io, result};
-use ffi;
+use crate::ffi;
pub type Result<T> = result::Result<T, Error>;
@@ -13,7 +13,7 @@ pub enum Error {
}
impl fmt::Display for Error {
- fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
+ fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
write!(f, "{}", error::Error::description(self))
}
}
@@ -27,7 +27,7 @@ impl std::error::Error for Error {
}
}
- fn cause(&self) -> Option<&error::Error> {
+ fn cause(&self) -> Option<&dyn error::Error> {
match *self {
Error::IoError(ref e) => Some(e),
Error::NotmuchError(ref e) => Some(e),
diff --git a/src/ffi.rs b/src/ffi.rs
index 3874ae5..1434ee0 100644
--- a/src/ffi.rs
+++ b/src/ffi.rs
@@ -4,10 +4,10 @@
use libc::{c_char, c_double, c_int, c_uint, c_ulong, c_void, time_t};
-use error::{Error, Result};
+use crate::error::{Error, Result};
use std::{error, fmt, str};
-use utils::ToStr;
+use crate::utils::ToStr;
notmuch_enum! {
#[repr(C)]
@@ -60,7 +60,7 @@ impl ToStr for Status {
}
impl fmt::Display for Status {
- fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
+ fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
write!(f, "{}", self.to_str().unwrap())
}
}
diff --git a/src/filenames.rs b/src/filenames.rs
index 3eef82d..ad4c3e9 100644
--- a/src/filenames.rs
+++ b/src/filenames.rs
@@ -5,7 +5,7 @@ use std::path::PathBuf;
use supercow::Phantomcow;
-use ffi;
+use crate::ffi;
pub trait FilenamesOwner {}
@@ -27,7 +27,7 @@ impl Drop for FilenamesPtr {
#[derive(Debug)]
pub struct Filenames<'o, O>
where
- O: FilenamesOwner + 'o,
+ O: FilenamesOwner,
{
pub(crate) handle: FilenamesPtr,
pub(crate) marker: Phantomcow<'o, O>,
diff --git a/src/lib.rs b/src/lib.rs
index 80916e2..005f142 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -4,8 +4,8 @@
#[macro_use]
mod macros;
-extern crate libc;
-extern crate supercow;
+use libc;
+
mod ffi;
mod utils;
@@ -21,16 +21,16 @@ mod tags;
mod thread;
mod threads;
-pub use database::{Database, DatabaseExt};
-pub use directory::{Directory, DirectoryExt};
-pub use error::Error;
-pub use filenames::{Filenames, FilenamesOwner};
-pub use message::{Message, MessageExt, MessageOwner};
-pub use messages::{Messages, MessagesExt, MessagesOwner};
-pub use query::{Query, QueryExt};
-pub use tags::{Tags, TagsExt, TagsOwner};
-pub use thread::{Thread, ThreadExt, ThreadOwner};
-pub use threads::{Threads, ThreadsExt, ThreadsOwner};
+pub use crate::database::{Database, DatabaseExt};
+pub use crate::directory::{Directory, DirectoryExt};
+pub use crate::error::Error;
+pub use crate::filenames::{Filenames, FilenamesOwner};
+pub use crate::message::{Message, MessageExt, MessageOwner};
+pub use crate::messages::{Messages, MessagesExt, MessagesOwner};
+pub use crate::query::{Query, QueryExt};
+pub use crate::tags::{Tags, TagsExt, TagsOwner};
+pub use crate::thread::{Thread, ThreadExt, ThreadOwner};
+pub use crate::threads::{Threads, ThreadsExt, ThreadsOwner};
-pub use ffi::{DatabaseMode, Sort};
-pub use utils::{StreamingIterator, StreamingIteratorExt};
+pub use crate::ffi::{DatabaseMode, Sort};
+pub use crate::utils::{StreamingIterator, StreamingIteratorExt};
diff --git a/src/message.rs b/src/message.rs
index 6feffde..52ff63c 100644
--- a/src/message.rs
+++ b/src/message.rs
@@ -3,15 +3,15 @@ use std::ops::Drop;
use std::path::PathBuf;
use supercow::{Phantomcow, Supercow};
-use error::{Error, Result};
-use ffi;
-use utils::ToStr;
-use Filenames;
-use FilenamesOwner;
-use Messages;
-use MessagesOwner;
-use Tags;
-use TagsOwner;
+use crate::error::{Error, Result};
+use crate::ffi;
+use crate::utils::ToStr;
+use crate::Filenames;
+use crate::FilenamesOwner;
+use crate::Messages;
+use crate::MessagesOwner;
+use crate::Tags;
+use crate::TagsOwner;
pub trait MessageOwner {}
@@ -29,7 +29,7 @@ impl Drop for MessagePtr {
#[derive(Debug)]
pub struct Message<'o, O>
where
- O: MessageOwner + 'o,
+ O: MessageOwner,
{
pub(crate) handle: MessagePtr,
marker: Phantomcow<'o, O>,
@@ -63,7 +63,7 @@ where
tid.to_str().unwrap().to_string()
}
- pub fn replies(self: &Self) -> Messages<Self> {
+ pub fn replies(self: &Self) -> Messages<'_, Self> {
<Self as MessageExt<'o, O>>::replies(self)
}
@@ -72,7 +72,7 @@ where
unsafe { ffi::notmuch_message_count_files(self.handle.ptr) }
}
- pub fn filenames(self: &Self) -> Filenames<Self> {
+ pub fn filenames(self: &Self) -> Filenames<'_, Self> {
<Self as MessageExt<'o, O>>::filenames(self)
}
@@ -101,7 +101,7 @@ where
}
}
- pub fn tags(&self) -> Tags<Self> {
+ pub fn tags(&self) -> Tags<'_, Self> {
<Self as MessageExt<'o, O>>::tags(self)
}
diff --git a/src/messages.rs b/src/messages.rs
index 5977e42..88c52ec 100644
--- a/src/messages.rs
+++ b/src/messages.rs
@@ -2,12 +2,12 @@ use std::ops::Drop;
use supercow::{Phantomcow, Supercow};
-use ffi;
-use utils::{StreamingIterator, StreamingIteratorExt};
-use Message;
-use MessageOwner;
-use Tags;
-use TagsOwner;
+use crate::ffi;
+use crate::utils::{StreamingIterator, StreamingIteratorExt};
+use crate::Message;
+use crate::MessageOwner;
+use crate::Tags;
+use crate::TagsOwner;
pub trait MessagesOwner {}
@@ -31,7 +31,7 @@ impl Drop for MessagesPtr {
#[derive(Debug)]
pub struct Messages<'o, O>
where
- O: MessagesOwner + 'o,
+ O: MessagesOwner,
{
pub(crate) handle: MessagesPtr,
marker: Phantomcow<'o, O>,
diff --git a/src/query.rs b/src/query.rs
index 38711e9..3dba264 100644
--- a/src/query.rs
+++ b/src/query.rs
@@ -3,14 +3,14 @@ use std::ptr;
use supercow::{Phantomcow, Supercow};
-use error::Result;
-use ffi;
-use ffi::Sort;
-use Database;
-use Messages;
-use MessagesOwner;
-use Threads;
-use ThreadsOwner;
+use crate::error::Result;
+use crate::ffi;
+use crate::ffi::Sort;
+use crate::Database;
+use crate::Messages;
+use crate::MessagesOwner;
+use crate::Threads;
+use crate::ThreadsOwner;
#[derive(Debug)]
pub(crate) struct QueryPtr {
@@ -77,7 +77,7 @@ impl<'d> Query<'d> {
/// Filter messages according to the query and return
pub fn search_messages<'q>(self: &'d Self) -> Result<Messages<'q, Self>> {
- <Query as QueryExt>::search_messages(self)
+ <Query<'_> as QueryExt>::search_messages(self)
}
pub fn count_messages(self: &Self) -> Result<u32> {
@@ -88,7 +88,7 @@ impl<'d> Query<'d> {
}
pub fn search_threads<'q>(self: &'d Self) -> Result<Threads<'q, Self>> {
- <Query as QueryExt>::search_threads(self)
+ <Query<'_> as QueryExt>::search_threads(self)
}
pub fn count_threads(self: &Self) -> Result<u32> {
diff --git a/src/tags.rs b/src/tags.rs
index 96afdf6..f400f63 100644
--- a/src/tags.rs
+++ b/src/tags.rs
@@ -4,7 +4,7 @@ use std::ops::Drop;
use supercow::Phantomcow;
-use ffi;
+use crate::ffi;
pub trait TagsOwner {}
@@ -20,7 +20,7 @@ impl Drop for TagsPtr {
}
#[derive(Debug)]
-pub struct Tags<'o, Owner: TagsOwner + 'o> {
+pub struct Tags<'o, Owner: TagsOwner> {
handle: TagsPtr,
marker: Phantomcow<'o, Owner>,
}
diff --git a/src/thread.rs b/src/thread.rs
index 8a8c1d7..1fb6814 100644
--- a/src/thread.rs
+++ b/src/thread.rs
@@ -1,12 +1,12 @@
use std::ops::Drop;
use supercow::{Phantomcow, Supercow};
-use ffi;
-use utils::ToStr;
-use Messages;
-use MessagesOwner;
-use Tags;
-use TagsOwner;
+use crate::ffi;
+use crate::utils::ToStr;
+use crate::Messages;
+use crate::MessagesOwner;
+use crate::Tags;
+use crate::TagsOwner;
pub trait ThreadOwner {}
@@ -24,7 +24,7 @@ impl Drop for ThreadPtr {
#[derive(Debug)]
pub struct Thread<'o, O>
where
- O: ThreadOwner + 'o,
+ O: ThreadOwner,
{
pub(crate) handle: ThreadPtr,
marker: Phantomcow<'o, O>,
@@ -61,17 +61,17 @@ where
unsafe { ffi::notmuch_thread_get_total_files(self.handle.ptr) }
}
- pub fn toplevel_messages(self: &Self) -> Messages<Self> {
+ pub fn toplevel_messages(self: &Self) -> Messages<'_, Self> {
<Self as ThreadExt<'o, O>>::toplevel_messages(self)
}
/// Get a `Messages` iterator for all messages in 'thread' in
/// oldest-first order.
- pub fn messages(self: &Self) -> Messages<Self> {
+ pub fn messages(self: &Self) -> Messages<'_, Self> {
<Self as ThreadExt<'o, O>>::messages(self)
}
- pub fn tags(&self) -> Tags<Self> {
+ pub fn tags(&self) -> Tags<'_, Self> {
<Self as ThreadExt<'o, O>>::tags(self)
}
diff --git a/src/threads.rs b/src/threads.rs
index f99ffb1..2bd3d24 100644
--- a/src/threads.rs
+++ b/src/threads.rs
@@ -1,11 +1,11 @@
use std::ops::Drop;
use supercow::{Phantomcow, Supercow};
-use utils::{StreamingIterator, StreamingIteratorExt};
+use crate::utils::{StreamingIterator, StreamingIteratorExt};
-use ffi;
-use thread::ThreadOwner;
-use Thread;
+use crate::ffi;
+use crate::thread::ThreadOwner;
+use crate::Thread;
pub trait ThreadsOwner {}
@@ -23,7 +23,7 @@ impl Drop for ThreadsPtr {
#[derive(Debug)]
pub struct Threads<'o, O>
where
- O: ThreadsOwner + 'o,
+ O: ThreadsOwner,
{
handle: ThreadsPtr,
marker: Phantomcow<'o, O>,
diff --git a/tests/main.rs b/tests/main.rs
index dd96644..05cd79f 100644
--- a/tests/main.rs
+++ b/tests/main.rs
@@ -1,5 +1,5 @@
-extern crate dirs;
-extern crate notmuch;
+use dirs;
+use notmuch;
use std::sync::Arc;
@@ -30,9 +30,9 @@ fn main() {
// let mut threads = db.create_query(&"".to_string()).unwrap().search_threads().unwrap();
- let threads = Arc::new(<Query as QueryExt>::search_threads(query).unwrap());
+ let threads = Arc::new(<Query<'_> as QueryExt>::search_threads(query).unwrap());
- while let Some(thread) = <Threads<_> as StreamingIteratorExt<_>>::next(threads.clone())
+ while let Some(thread) = <Threads<'_, _> as StreamingIteratorExt<_>>::next(threads.clone())
{
println!("thread {:?} {:?}", thread.subject(), thread.authors());
}