Struct lunatic_cached_process::CachedProcess
source · pub struct CachedProcess<'a, T> { /* private fields */ }
Expand description
Cached process to avoid looking up a global process multiple times.
Implementations§
source§impl<'a, T> CachedProcess<'a, T>
impl<'a, T> CachedProcess<'a, T>
sourcepub fn new(name: &'a str) -> Self
pub fn new(name: &'a str) -> Self
Construct a new process cache with a registered process name.
sourcepub fn process_name(&'a self) -> &'a str
pub fn process_name(&'a self) -> &'a str
Returns the process name.
sourcepub fn is_present(&'a self) -> bool
pub fn is_present(&'a self) -> bool
Returns true if the process has been looked up and exists.
Example
use lunatic::Process;
let process: CachedProcess<'static, Process<()>> = CachedProcess::new("foo");
assert!(!process.is_present()); // Initially not present
process.get();
assert!(!process.is_present()); // Not present, even after lookup
spawn!(|| { loop { /* ... */ } }).register("foo"); // Start a process called "foo"
process.reset();
process.get();
assert!(process.is_present()); // Is present
sourcepub fn is_looked_up(&'a self) -> bool
pub fn is_looked_up(&'a self) -> bool
Returns true if the process has been looked up, regardless if the process was found.
Example
use lunatic::Process;
let process: CachedProcess<'static, Process<()>> = CachedProcess::new("");
assert!(!process.is_looked_up());
process.get();
assert!(process.is_looked_up());
Trait Implementations§
source§impl<'a, T: Clone> Clone for CachedProcess<'a, T>
impl<'a, T: Clone> Clone for CachedProcess<'a, T>
source§fn clone(&self) -> CachedProcess<'a, T>
fn clone(&self) -> CachedProcess<'a, T>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl<'a, T: Debug> Debug for CachedProcess<'a, T>
impl<'a, T: Debug> Debug for CachedProcess<'a, T>
source§impl<'de: 'a, 'a, T> Deserialize<'de> for CachedProcess<'a, T>where
T: Deserialize<'de>,
impl<'de: 'a, 'a, T> Deserialize<'de> for CachedProcess<'a, T>where T: Deserialize<'de>,
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl<'a, T: PartialEq> PartialEq<CachedProcess<'a, T>> for CachedProcess<'a, T>
impl<'a, T: PartialEq> PartialEq<CachedProcess<'a, T>> for CachedProcess<'a, T>
source§fn eq(&self, other: &CachedProcess<'a, T>) -> bool
fn eq(&self, other: &CachedProcess<'a, T>) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.