File tree Expand file tree Collapse file tree 7 files changed +156
-132
lines changed Expand file tree Collapse file tree 7 files changed +156
-132
lines changed Original file line number Diff line number Diff line change @@ -14,3 +14,6 @@ Cargo.lock
14
14
15
15
# Intellij IDEA
16
16
.idea
17
+
18
+ # macOS DS_Store files
19
+ .DS_Store
Original file line number Diff line number Diff line change 8
8
9
9
extern crate sysfs_gpio;
10
10
11
- use sysfs_gpio:: { Direction , Pin } ;
12
- use std:: time:: Duration ;
13
- use std:: thread:: sleep;
14
11
use std:: env;
12
+ use std:: thread:: sleep;
13
+ use std:: time:: Duration ;
14
+ use sysfs_gpio:: { Direction , Pin } ;
15
15
16
16
struct Arguments {
17
17
pin : u64 ,
@@ -58,20 +58,18 @@ fn get_args() -> Option<Arguments> {
58
58
Err ( _) => return None ,
59
59
} ;
60
60
Some ( Arguments {
61
- pin : pin,
62
- duration_ms : duration_ms,
63
- period_ms : period_ms,
64
- } )
61
+ pin : pin,
62
+ duration_ms : duration_ms,
63
+ period_ms : period_ms,
64
+ } )
65
65
}
66
66
67
67
fn main ( ) {
68
68
match get_args ( ) {
69
69
None => print_usage ( ) ,
70
- Some ( args) => {
71
- match blink_my_led ( args. pin , args. duration_ms , args. period_ms ) {
72
- Ok ( ( ) ) => println ! ( "Success!" ) ,
73
- Err ( err) => println ! ( "We have a blinking problem: {}" , err) ,
74
- }
75
- }
70
+ Some ( args) => match blink_my_led ( args. pin , args. duration_ms , args. period_ms ) {
71
+ Ok ( ( ) ) => println ! ( "Success!" ) ,
72
+ Err ( err) => println ! ( "We have a blinking problem: {}" , err) ,
73
+ } ,
76
74
}
77
75
}
Original file line number Diff line number Diff line change 8
8
9
9
extern crate sysfs_gpio;
10
10
11
- use sysfs_gpio:: { Direction , Edge , Pin } ;
12
11
use std:: env;
13
12
use std:: io:: prelude:: * ;
14
13
use std:: io:: stdout;
14
+ use sysfs_gpio:: { Direction , Edge , Pin } ;
15
15
16
16
fn interrupt ( pin : u64 ) -> sysfs_gpio:: Result < ( ) > {
17
17
let input = Pin :: new ( pin) ;
@@ -38,12 +38,10 @@ fn main() {
38
38
println ! ( "Usage: ./interrupt <pin>" ) ;
39
39
} else {
40
40
match args[ 1 ] . parse :: < u64 > ( ) {
41
- Ok ( pin) => {
42
- match interrupt ( pin) {
43
- Ok ( ( ) ) => println ! ( "Interrupting Complete!" ) ,
44
- Err ( err) => println ! ( "Error: {}" , err) ,
45
- }
46
- }
41
+ Ok ( pin) => match interrupt ( pin) {
42
+ Ok ( ( ) ) => println ! ( "Interrupting Complete!" ) ,
43
+ Err ( err) => println ! ( "Error: {}" , err) ,
44
+ } ,
47
45
Err ( _) => println ! ( "Usage: ./interrupt <pin>" ) ,
48
46
}
49
47
}
Original file line number Diff line number Diff line change 8
8
9
9
extern crate sysfs_gpio;
10
10
11
- use sysfs_gpio:: { Direction , Pin } ;
12
11
use std:: env;
13
12
use std:: thread:: sleep;
14
13
use std:: time:: Duration ;
14
+ use sysfs_gpio:: { Direction , Pin } ;
15
15
16
16
fn poll ( pin_num : u64 ) -> sysfs_gpio:: Result < ( ) > {
17
17
// NOTE: this currently runs forever and as such if
@@ -40,12 +40,10 @@ fn main() {
40
40
println ! ( "Usage: ./poll <pin>" ) ;
41
41
} else {
42
42
match args[ 1 ] . parse :: < u64 > ( ) {
43
- Ok ( pin) => {
44
- match poll ( pin) {
45
- Ok ( ( ) ) => println ! ( "Polling Complete!" ) ,
46
- Err ( err) => println ! ( "Error: {}" , err) ,
47
- }
48
- }
43
+ Ok ( pin) => match poll ( pin) {
44
+ Ok ( ( ) ) => println ! ( "Polling Complete!" ) ,
45
+ Err ( err) => println ! ( "Error: {}" , err) ,
46
+ } ,
49
47
Err ( _) => println ! ( "Usage: ./poll <pin>" ) ,
50
48
}
51
49
}
Original file line number Diff line number Diff line change @@ -9,7 +9,7 @@ extern crate tokio;
9
9
use std:: env;
10
10
11
11
#[ cfg( feature = "use_tokio" ) ]
12
- use futures:: { Future , lazy , Stream } ;
12
+ use futures:: { lazy , Future , Stream } ;
13
13
14
14
#[ cfg( feature = "use_tokio" ) ]
15
15
use sysfs_gpio:: { Direction , Edge , Pin } ;
@@ -27,12 +27,15 @@ fn stream(pin_nums: Vec<u64>) -> sysfs_gpio::Result<()> {
27
27
pin. export ( ) . unwrap ( ) ;
28
28
pin. set_direction ( Direction :: In ) . unwrap ( ) ;
29
29
pin. set_edge ( Edge :: BothEdges ) . unwrap ( ) ;
30
- tokio:: spawn ( pin. get_value_stream ( ) . unwrap ( )
31
- . for_each ( move |val| {
32
- println ! ( "Pin {} changed value to {}" , i, val) ;
33
- Ok ( ( ) )
34
- } )
35
- . map_err ( |_| ( ) ) ) ;
30
+ tokio:: spawn (
31
+ pin. get_value_stream ( )
32
+ . unwrap ( )
33
+ . for_each ( move |val| {
34
+ println ! ( "Pin {} changed value to {}" , i, val) ;
35
+ Ok ( ( ) )
36
+ } )
37
+ . map_err ( |_| ( ) ) ,
38
+ ) ;
36
39
}
37
40
Ok ( ( ) )
38
41
} ) ;
Original file line number Diff line number Diff line change
1
+ use nix;
1
2
use std:: convert;
2
3
use std:: fmt;
3
4
use std:: io;
4
- use nix;
5
5
6
6
#[ derive( Debug ) ]
7
7
pub enum Error {
@@ -25,7 +25,7 @@ impl ::std::error::Error for Error {
25
25
}
26
26
}
27
27
28
- fn cause ( & self ) -> Option < & :: std:: error:: Error > {
28
+ fn cause ( & self ) -> Option < & dyn std:: error:: Error > {
29
29
match * self {
30
30
Error :: Io ( ref e) => Some ( e) ,
31
31
_ => None ,
@@ -44,7 +44,6 @@ impl fmt::Display for Error {
44
44
}
45
45
}
46
46
47
-
48
47
impl convert:: From < io:: Error > for Error {
49
48
fn from ( e : io:: Error ) -> Error {
50
49
Error :: Io ( e)
You can’t perform that action at this time.
0 commit comments