Add self-creation for controller
This commit is contained in:
parent
d193000aec
commit
4e3df272c3
10 changed files with 105 additions and 14 deletions
emgauwa-controller/src
18
emgauwa-controller/src/driver.rs
Normal file
18
emgauwa-controller/src/driver.rs
Normal file
|
@ -0,0 +1,18 @@
|
|||
use serde::{Deserialize, Deserializer};
|
||||
|
||||
#[derive(Debug, Clone, Copy)]
|
||||
pub enum Driver {
|
||||
Gpio,
|
||||
Piface,
|
||||
}
|
||||
|
||||
impl<'de> Deserialize<'de> for Driver {
|
||||
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error> where D: Deserializer<'de> {
|
||||
match String::deserialize(deserializer)?.as_str() {
|
||||
"gpio" => Ok(Driver::Gpio),
|
||||
"piface" => Ok(Driver::Piface),
|
||||
_ => Err(serde::de::Error::custom("invalid driver")),
|
||||
}
|
||||
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue