Struct stc_ts_file_analyzer::type_facts::TypeFacts
source · [−]pub struct TypeFacts {
bits: u32,
}
Fields
bits: u32
Implementations
sourceimpl TypeFacts
impl TypeFacts
pub const None: Self = _
sourcepub const TypeofEQString: Self = _
pub const TypeofEQString: Self = _
typeof x === “string”
sourcepub const TypeofEQNumber: Self = _
pub const TypeofEQNumber: Self = _
typeof x === “number”
sourcepub const TypeofEQBigInt: Self = _
pub const TypeofEQBigInt: Self = _
typeof x === “bigint”
sourcepub const TypeofEQBoolean: Self = _
pub const TypeofEQBoolean: Self = _
typeof x === “boolean”
sourcepub const TypeofEQSymbol: Self = _
pub const TypeofEQSymbol: Self = _
typeof x === “symbol”
sourcepub const TypeofEQObject: Self = _
pub const TypeofEQObject: Self = _
typeof x === “object”
sourcepub const TypeofEQFunction: Self = _
pub const TypeofEQFunction: Self = _
typeof x === “function”
sourcepub const TypeofEQHostObject: Self = _
pub const TypeofEQHostObject: Self = _
typeof x === “xxx”
sourcepub const TypeofNEString: Self = _
pub const TypeofNEString: Self = _
typeof x !== “string”
sourcepub const TypeofNENumber: Self = _
pub const TypeofNENumber: Self = _
typeof x !== “number”
sourcepub const TypeofNEBigInt: Self = _
pub const TypeofNEBigInt: Self = _
typeof x !== “bigint”
sourcepub const TypeofNEBoolean: Self = _
pub const TypeofNEBoolean: Self = _
typeof x !== “boolean”
sourcepub const TypeofNESymbol: Self = _
pub const TypeofNESymbol: Self = _
typeof x !== “symbol”
sourcepub const TypeofNEObject: Self = _
pub const TypeofNEObject: Self = _
typeof x !== “object”
sourcepub const TypeofNEFunction: Self = _
pub const TypeofNEFunction: Self = _
typeof x !== “function”
sourcepub const TypeofNEHostObject: Self = _
pub const TypeofNEHostObject: Self = _
typeof x !== “xxx”
sourcepub const EQUndefined: Self = _
pub const EQUndefined: Self = _
x === undefined
sourcepub const EQUndefinedOrNull: Self = _
pub const EQUndefinedOrNull: Self = _
x === undefined / x === null
sourcepub const NEUndefined: Self = _
pub const NEUndefined: Self = _
x !== undefined
sourcepub const NEUndefinedOrNull: Self = _
pub const NEUndefinedOrNull: Self = _
x != undefined / x != null
pub const All: Self = _
sourcepub const fn from_bits(bits: u32) -> Option<Self>
pub const fn from_bits(bits: u32) -> Option<Self>
Convert from underlying bit representation, unless that representation contains bits that do not correspond to a flag.
sourcepub const fn from_bits_truncate(bits: u32) -> Self
pub const fn from_bits_truncate(bits: u32) -> Self
Convert from underlying bit representation, dropping any bits that do not correspond to flags.
sourcepub const unsafe fn from_bits_unchecked(bits: u32) -> Self
pub const unsafe fn from_bits_unchecked(bits: u32) -> Self
Convert from underlying bit representation, preserving all bits (even those not corresponding to a defined flag).
Safety
The caller of the bitflags!
macro can chose to allow or
disallow extra bits for their bitflags type.
The caller of from_bits_unchecked()
has to ensure that
all bits correspond to a defined flag or that extra bits
are valid for this bitflags type.
sourcepub const fn intersects(&self, other: Self) -> bool
pub const fn intersects(&self, other: Self) -> bool
Returns true
if there are flags common to both self
and other
.
sourcepub const fn contains(&self, other: Self) -> bool
pub const fn contains(&self, other: Self) -> bool
Returns true
if all of the flags in other
are contained within self
.
sourcepub fn set(&mut self, other: Self, value: bool)
pub fn set(&mut self, other: Self, value: bool)
Inserts or removes the specified flags depending on the passed value.
sourcepub const fn intersection(self, other: Self) -> Self
pub const fn intersection(self, other: Self) -> Self
Returns the intersection between the flags in self
and
other
.
Specifically, the returned set contains only the flags which are
present in both self
and other
.
This is equivalent to using the &
operator (e.g.
ops::BitAnd
), as in flags & other
.
sourcepub const fn union(self, other: Self) -> Self
pub const fn union(self, other: Self) -> Self
Returns the union of between the flags in self
and other
.
Specifically, the returned set contains all flags which are
present in either self
or other
, including any which are
present in both (see Self::symmetric_difference
if that
is undesirable).
This is equivalent to using the |
operator (e.g.
ops::BitOr
), as in flags | other
.
sourcepub const fn difference(self, other: Self) -> Self
pub const fn difference(self, other: Self) -> Self
Returns the difference between the flags in self
and other
.
Specifically, the returned set contains all flags present in
self
, except for the ones present in other
.
It is also conceptually equivalent to the “bit-clear” operation:
flags & !other
(and this syntax is also supported).
This is equivalent to using the -
operator (e.g.
ops::Sub
), as in flags - other
.
sourcepub const fn symmetric_difference(self, other: Self) -> Self
pub const fn symmetric_difference(self, other: Self) -> Self
Returns the symmetric difference between the flags
in self
and other
.
Specifically, the returned set contains the flags present which
are present in self
or other
, but that are not present in
both. Equivalently, it contains the flags present in exactly
one of the sets self
and other
.
This is equivalent to using the ^
operator (e.g.
ops::BitXor
), as in flags ^ other
.
sourcepub const fn complement(self) -> Self
pub const fn complement(self) -> Self
Returns the complement of this set of flags.
Specifically, the returned set contains all the flags which are
not set in self
, but which are allowed for this type.
Alternatively, it can be thought of as the set difference
between Self::all()
and self
(e.g. Self::all() - self
)
This is equivalent to using the !
operator (e.g.
ops::Not
), as in !flags
.
sourceimpl TypeFacts
impl TypeFacts
pub const BaseStringStrictFacts: Self = _
pub const BaseStringFacts: Self = _
pub const StringStrictFacts: Self = _
pub const StringFacts: Self = _
pub const EmptyStringStrictFacts: Self = _
pub const EmptyStringFacts: Self = _
pub const NonEmptyStringStrictFacts: Self = _
pub const NonEmptyStringFacts: Self = _
pub const BaseNumberStrictFacts: Self = _
pub const BaseNumberFacts: Self = _
pub const NumberStrictFacts: Self = _
pub const NumberFacts: Self = _
pub const ZeroNumberStrictFacts: Self = _
pub const ZeroNumberFacts: Self = _
pub const NonZeroNumberStrictFacts: Self = _
pub const NonZeroNumberFacts: Self = _
pub const BaseBigIntStrictFacts: Self = _
pub const BaseBigIntFacts: Self = _
pub const BigIntStrictFacts: Self = _
pub const BigIntFacts: Self = _
pub const ZeroBigIntStrictFacts: Self = _
pub const ZeroBigIntFacts: Self = _
pub const NonZeroBigIntStrictFacts: Self = _
pub const NonZeroBigIntFacts: Self = _
pub const BaseBooleanStrictFacts: Self = _
pub const BaseBooleanFacts: Self = _
pub const BooleanStrictFacts: Self = _
pub const BooleanFacts: Self = _
pub const FalseStrictFacts: Self = _
pub const FalseFacts: Self = _
pub const TrueStrictFacts: Self = _
pub const TrueFacts: Self = _
pub const SymbolStrictFacts: Self = _
pub const SymbolFacts: Self = _
pub const ObjectStrictFacts: Self = _
pub const ObjectFacts: Self = _
pub const FunctionStrictFacts: Self = _
pub const FunctionFacts: Self = _
pub const UndefinedFacts: Self = _
pub const NullFacts: Self = _
pub const EmptyObjectStrictFacts: Self = _
pub const EmptyObjectFacts: Self = _
Trait Implementations
sourceimpl BitAndAssign<TypeFacts> for TypeFacts
impl BitAndAssign<TypeFacts> for TypeFacts
sourcefn bitand_assign(&mut self, other: Self)
fn bitand_assign(&mut self, other: Self)
Disables all flags disabled in the set.
sourceimpl BitOrAssign<TypeFacts> for TypeFacts
impl BitOrAssign<TypeFacts> for TypeFacts
sourcefn bitor_assign(&mut self, other: Self)
fn bitor_assign(&mut self, other: Self)
Adds the set of flags.
sourceimpl BitXorAssign<TypeFacts> for TypeFacts
impl BitXorAssign<TypeFacts> for TypeFacts
sourcefn bitxor_assign(&mut self, other: Self)
fn bitxor_assign(&mut self, other: Self)
Toggles the set of flags.
sourceimpl Extend<TypeFacts> for TypeFacts
impl Extend<TypeFacts> for TypeFacts
sourcefn extend<T: IntoIterator<Item = Self>>(&mut self, iterator: T)
fn extend<T: IntoIterator<Item = Self>>(&mut self, iterator: T)
sourcefn extend_one(&mut self, item: A)
fn extend_one(&mut self, item: A)
extend_one
)sourcefn extend_reserve(&mut self, additional: usize)
fn extend_reserve(&mut self, additional: usize)
extend_one
)sourceimpl FromIterator<TypeFacts> for TypeFacts
impl FromIterator<TypeFacts> for TypeFacts
sourcefn from_iter<T: IntoIterator<Item = Self>>(iterator: T) -> Self
fn from_iter<T: IntoIterator<Item = Self>>(iterator: T) -> Self
sourceimpl Ord for TypeFacts
impl Ord for TypeFacts
1.21.0 · sourcefn max(self, other: Self) -> Self
fn max(self, other: Self) -> Self
1.21.0 · sourcefn min(self, other: Self) -> Self
fn min(self, other: Self) -> Self
1.50.0 · sourcefn clamp(self, min: Self, max: Self) -> Selfwhere
Self: PartialOrd<Self>,
fn clamp(self, min: Self, max: Self) -> Selfwhere
Self: PartialOrd<Self>,
sourceimpl PartialOrd<TypeFacts> for TypeFacts
impl PartialOrd<TypeFacts> for TypeFacts
sourcefn partial_cmp(&self, other: &TypeFacts) -> Option<Ordering>
fn partial_cmp(&self, other: &TypeFacts) -> Option<Ordering>
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self
and other
) and is used by the <=
operator. Read moresourceimpl SubAssign<TypeFacts> for TypeFacts
impl SubAssign<TypeFacts> for TypeFacts
sourcefn sub_assign(&mut self, other: Self)
fn sub_assign(&mut self, other: Self)
Disables all flags enabled in the set.
impl Copy for TypeFacts
impl Eq for TypeFacts
impl StructuralEq for TypeFacts
impl StructuralPartialEq for TypeFacts
Auto Trait Implementations
impl RefUnwindSafe for TypeFacts
impl Send for TypeFacts
impl Sync for TypeFacts
impl Unpin for TypeFacts
impl UnwindSafe for TypeFacts
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
sourceimpl<T> CallHasher for Twhere
T: Hash + ?Sized,
impl<T> CallHasher for Twhere
T: Hash + ?Sized,
sourceimpl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcefn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.