1use crate::place::{Place, PlaceRef};
2
3#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5pub struct Inhibitor {
6 pub place: PlaceRef,
7}
8
9#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11pub struct Read {
12 pub place: PlaceRef,
13}
14
15#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17pub struct Reset {
18 pub place: PlaceRef,
19}
20
21pub fn inhibitor<T: 'static>(place: &Place<T>) -> Inhibitor {
23 Inhibitor {
24 place: place.as_ref(),
25 }
26}
27
28pub fn read<T: 'static>(place: &Place<T>) -> Read {
30 Read {
31 place: place.as_ref(),
32 }
33}
34
35pub fn reset<T: 'static>(place: &Place<T>) -> Reset {
37 Reset {
38 place: place.as_ref(),
39 }
40}