From 048d4fa5529bf33e21f11873792cdacfcaf7793f Mon Sep 17 00:00:00 2001 From: Robin Krahl Date: Sun, 16 Dec 2018 12:28:58 +0100 Subject: Use the dyn syntax for trait objects This patch changes the type of trait objects from `Trait` to `dyn Trait`. This fixes bare-trait-object compiler warnings. --- src/device.rs | 2 +- src/pws.rs | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/device.rs b/src/device.rs index fc07baf..cbc826e 100644 --- a/src/device.rs +++ b/src/device.rs @@ -536,7 +536,7 @@ fn connect_model(model: Model) -> bool { } impl DeviceWrapper { - fn device(&self) -> &Device { + fn device(&self) -> &dyn Device { match *self { DeviceWrapper::Storage(ref storage) => storage, DeviceWrapper::Pro(ref pro) => pro, diff --git a/src/pws.rs b/src/pws.rs index f283d2b..d73f44c 100644 --- a/src/pws.rs +++ b/src/pws.rs @@ -51,7 +51,7 @@ pub const SLOT_COUNT: u8 = 16; /// [`lock`]: trait.Device.html#method.lock /// [`GetPasswordSafe`]: trait.GetPasswordSafe.html pub struct PasswordSafe<'a> { - _device: &'a Device, + _device: &'a dyn Device, } /// Provides access to a [`PasswordSafe`][]. @@ -102,7 +102,7 @@ pub trait GetPasswordSafe { } fn get_password_safe<'a>( - device: &'a Device, + device: &'a dyn Device, user_pin: &str, ) -> Result, CommandError> { let user_pin_string = get_cstring(user_pin)?; -- cgit v1.2.1