[−]Struct ichen_openprotocol::Filters
General authorizations to access the iChen System via Open Protocol.
See this document for details.
Methods
impl Filters
pub const None: Filters
No rights.
pub const Status: Filters
Controller status update messages.
pub const Cycle: Filters
Cycle data messages.
pub const Mold: Filters
Mold data messages.
pub const Actions: Filters
Controller action messages.
pub const Alarms: Filters
Controller alarm messages.
pub const Audit: Filters
Controller audit trail of setting changes
pub const All: Filters
Administrator rights.
All
implies Status
+ Cycle
+ Mold
+ Actions
+ Alarms
+ Audit
pub const JobCards: Filters
MIS/MES integration: Job scheduling messages.
pub const Operators: Filters
MIS/MES integration: User authorization messages.
pub const OPCUA: Filters
Industrial bus integration: Connect via OPC UA.
pub const fn empty() -> Filters
Returns an empty set of flags
pub const fn all() -> Filters
Returns the set containing all flags.
pub const fn bits(&self) -> u32
Returns the raw value of the flags currently stored.
pub fn from_bits(bits: u32) -> Option<Filters>
Convert from underlying bit representation, unless that representation contains bits that do not correspond to a flag.
pub const fn from_bits_truncate(bits: u32) -> Filters
Convert from underlying bit representation, dropping any bits that do not correspond to flags.
pub const fn is_empty(&self) -> bool
Returns true
if no flags are currently stored.
pub const fn is_all(&self) -> bool
Returns true
if all flags are currently set.
pub const fn intersects(&self, other: Filters) -> bool
Returns true
if there are flags common to both self
and other
.
pub const fn contains(&self, other: Filters) -> bool
Returns true
all of the flags in other
are contained within self
.
pub fn insert(&mut self, other: Filters)
Inserts the specified flags in-place.
pub fn remove(&mut self, other: Filters)
Removes the specified flags in-place.
pub fn toggle(&mut self, other: Filters)
Toggles the specified flags in-place.
pub fn set(&mut self, other: Filters, value: bool)
Inserts or removes the specified flags depending on the passed value.
impl Filters
[src]
pub fn has(self, other: Self) -> bool
[src]
Is a particular set of filters set?
Examples
use ichen_openprotocol::Filters; let f = Filters::Status + Filters::Audit + Filters::JobCards; assert!(f.has(Filters::Status)); assert!(f.has(Filters::JobCards)); assert!(!f.has(Filters::All)); assert!(!f.has(Filters::OPCUA)); assert!(!f.has(Filters::Mold));
Trait Implementations
impl Copy for Filters
impl Ord for Filters
fn cmp(&self, other: &Filters) -> Ordering
fn max(self, other: Self) -> Self
1.21.0[src]
Compares and returns the maximum of two values. Read more
fn min(self, other: Self) -> Self
1.21.0[src]
Compares and returns the minimum of two values. Read more
fn clamp(self, min: Self, max: Self) -> Self
[src]
clamp
)Restrict a value to a certain interval. Read more
impl Clone for Filters
fn clone(&self) -> Filters
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl PartialEq<Filters> for Filters
impl Extend<Filters> for Filters
fn extend<T: IntoIterator<Item = Filters>>(&mut self, iterator: T)
impl<'_> From<&'_ str> for Filters
[src]
fn from(s: &str) -> Self
[src]
Call Filters::from_str
to parse a filters value from a comma-delimited string.
impl From<Filters> for String
[src]
impl Eq for Filters
impl PartialOrd<Filters> for Filters
fn partial_cmp(&self, other: &Filters) -> Option<Ordering>
fn lt(&self, other: &Filters) -> bool
fn le(&self, other: &Filters) -> bool
fn gt(&self, other: &Filters) -> bool
fn ge(&self, other: &Filters) -> bool
impl Debug for Filters
impl Display for Filters
[src]
impl Add<Filters> for Filters
[src]
type Output = Self
The resulting type after applying the +
operator.
fn add(self, rhs: Self) -> Self::Output
[src]
Turn on a particular filter.
Example
use ichen_openprotocol::Filters; let mut f = Filters::Cycle + Filters::OPCUA; f = f + Filters::All; assert_eq!(Filters::All + Filters::OPCUA, f);
impl Sub<Filters> for Filters
type Output = Filters
The resulting type after applying the -
operator.
fn sub(self, other: Filters) -> Filters
Returns the set difference of the two sets of flags.
impl AddAssign<Filters> for Filters
[src]
fn add_assign(&mut self, other: Self)
[src]
Turn on a particular filter.
Example
use ichen_openprotocol::Filters; let mut f = Filters::Cycle + Filters::OPCUA; f += Filters::All; assert_eq!(Filters::All + Filters::OPCUA, f);
impl SubAssign<Filters> for Filters
fn sub_assign(&mut self, other: Filters)
Disables all flags enabled in the set.
impl Not for Filters
type Output = Filters
The resulting type after applying the !
operator.
fn not(self) -> Filters
Returns the complement of this set of flags.
impl BitAnd<Filters> for Filters
type Output = Filters
The resulting type after applying the &
operator.
fn bitand(self, other: Filters) -> Filters
Returns the intersection between the two sets of flags.
impl BitOr<Filters> for Filters
type Output = Filters
The resulting type after applying the |
operator.
fn bitor(self, other: Filters) -> Filters
Returns the union of the two sets of flags.
impl BitXor<Filters> for Filters
type Output = Filters
The resulting type after applying the ^
operator.
fn bitxor(self, other: Filters) -> Filters
Returns the left flags, but with all the right flags toggled.
impl BitAndAssign<Filters> for Filters
fn bitand_assign(&mut self, other: Filters)
Disables all flags disabled in the set.
impl BitOrAssign<Filters> for Filters
fn bitor_assign(&mut self, other: Filters)
Adds the set of flags.
impl BitXorAssign<Filters> for Filters
fn bitxor_assign(&mut self, other: Filters)
Toggles the set of flags.
impl Hash for Filters
fn hash<__H: Hasher>(&self, state: &mut __H)
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
Feeds a slice of this type into the given [Hasher
]. Read more
impl FromIterator<Filters> for Filters
fn from_iter<T: IntoIterator<Item = Filters>>(iterator: T) -> Filters
impl FromStr for Filters
[src]
type Err = String
The associated error which can be returned from parsing.
fn from_str(text: &str) -> Result<Self, Self::Err>
[src]
Parse a comma-delimited String
into a Filters
values.
Filters::from_str
never fails.
Unmatched tokens will simply be discarded.
If nothing matches, None
will be returned.
Examples
use ichen_openprotocol::Filters; let f = Filters::from_str("Hello, World, Cycle, Mold,Operators|Foo+BarXYZYXYZ=123").unwrap(); assert_eq!(Filters::Cycle + Filters::Mold, f);
impl Octal for Filters
impl Binary for Filters
impl LowerHex for Filters
impl UpperHex for Filters
impl Serialize for Filters
[src]
impl<'de> Deserialize<'de> for Filters
[src]
fn deserialize<D>(d: D) -> Result<Self, D::Error> where
D: Deserializer<'de>,
[src]
D: Deserializer<'de>,
Auto Trait Implementations
impl Sync for Filters
impl Unpin for Filters
impl Send for Filters
impl UnwindSafe for Filters
impl RefUnwindSafe for Filters
Blanket Implementations
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T> From<T> for T
[src]
impl<T> ToString for T where
T: Display + ?Sized,
[src]
T: Display + ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> DeserializeOwned for T where
T: Deserialize<'de>,
[src]
T: Deserialize<'de>,