Skip to content

jackmead515/rjdebounce

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

rjdebounce

Super simple library to do a super simple thing. Debounce a function. Zero dependencies.

Example

use rjdebounce::Bouncer;

let mut bouncer = Bouncer::new(Duration::from_secs(1));

let result = bouncer.debounce(|| {
    return 5 + 5;
})

assert_eq!(result.is_some(), true);
assert_eq!(result.unwrap(), 10);

OR...

use rjdebounce::Bouncer;

let func = || 5 + 6;
let delay = Duration::from_secs(1);

let mut bouncer = Bouncer::new(delay).with_func(func);

assert_eq!(bouncer.get_result().is_some(), false);
bouncer.execute();
assert_eq!(bouncer.get_result().is_some(), true);

Do I plan to expand on this library?

Yeah absolutely. I'd love to make a bigger lib.

Should I use this in production?

I mean... sure, if you want. But this is just practice for me. I do not have a licence for this and I purely wrote it to get a feel for cargo and package management. I will use this in my personal projects though. So feel free!

About

Function debouncing functionality in Rust

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages