Compare commits
1 commit
9d39ce125a
...
0c828a8cf1
Author | SHA1 | Date | |
---|---|---|---|
0c828a8cf1 |
2 changed files with 4 additions and 4 deletions
|
@ -32,12 +32,12 @@ fn main() {
|
|||
});
|
||||
loop {
|
||||
thread::sleep(time::Duration::from_millis(250));
|
||||
let mut lights = lock.write().unwrap();
|
||||
let pattern = format_multiline("val 255 150 0");
|
||||
pattern.iter()
|
||||
.map(|x| parse_line(x))
|
||||
.for_each(|res| {
|
||||
.map(|x: &Vec<String>| parse_line((*x).clone()))
|
||||
.for_each(|res: Result<Box<dyn Pattern>, ParseError>| {
|
||||
if res.is_ok() {
|
||||
let mut lights = lock.write().unwrap();
|
||||
res.unwrap().execute(&mut lights);
|
||||
}
|
||||
});
|
||||
|
|
|
@ -5,7 +5,7 @@ use std::{
|
|||
};
|
||||
use std::sync::RwLockWriteGuard;
|
||||
|
||||
type ParseError = Box<dyn std::error::Error>;
|
||||
pub type ParseError = Box<dyn std::error::Error>;
|
||||
|
||||
pub trait Pattern<'a> {
|
||||
fn execute(&self, values: &'a mut RwLockWriteGuard<'_, [RawColor; crate::LED_SIZE]>);
|
||||
|
|
Loading…
Reference in a new issue