Struct bytecode::access_path::AbsStructType
source · pub struct AbsStructType { /* private fields */ }
Expand description
Fully qualified type identifier base
bound to type actuals types
Implementations§
source§impl AbsStructType
impl AbsStructType
pub fn new(mid: &ModuleId, sid: StructId, types: Vec<Type>) -> Self
sourcepub fn get_type_tag(&self, env: &GlobalEnv) -> Option<StructTag>
pub fn get_type_tag(&self, env: &GlobalEnv) -> Option<StructTag>
If this self
is closed, convert it to a StructTag
. Return
None
otherwise
sourcepub fn substitute_footprint(&mut self, type_actuals: &[Type])
pub fn substitute_footprint(&mut self, type_actuals: &[Type])
Substitue the open types in self.types with caller type_actuals
sourcepub fn normalize(&self, env: &GlobalEnv) -> Option<StructTag>
pub fn normalize(&self, env: &GlobalEnv) -> Option<StructTag>
Returns a normalized representation of this type if it closed, None if it is open
sourcepub fn is_closed(&self) -> bool
pub fn is_closed(&self) -> bool
Return true
if self
has no type variables or if all of self
’s type variables are bound
sourcepub fn display<'a>(&'a self, env: &'a GlobalEnv) -> AbsStructTypeDisplay<'a>
pub fn display<'a>(&'a self, env: &'a GlobalEnv) -> AbsStructTypeDisplay<'a>
Return a wrapper of self
that implements Display
using env
Trait Implementations§
source§impl Clone for AbsStructType
impl Clone for AbsStructType
source§fn clone(&self) -> AbsStructType
fn clone(&self) -> AbsStructType
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 Debug for AbsStructType
impl Debug for AbsStructType
source§impl Ord for AbsStructType
impl Ord for AbsStructType
source§fn cmp(&self, other: &AbsStructType) -> Ordering
fn cmp(&self, other: &AbsStructType) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere Self: Sized,
Compares and returns the maximum of two values. Read more
source§impl PartialEq<AbsStructType> for AbsStructType
impl PartialEq<AbsStructType> for AbsStructType
source§fn eq(&self, other: &AbsStructType) -> bool
fn eq(&self, other: &AbsStructType) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.source§impl PartialOrd<AbsStructType> for AbsStructType
impl PartialOrd<AbsStructType> for AbsStructType
source§fn partial_cmp(&self, other: &AbsStructType) -> Option<Ordering>
fn partial_cmp(&self, other: &AbsStructType) -> Option<Ordering>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read moreimpl Eq for AbsStructType
impl StructuralEq for AbsStructType
impl StructuralPartialEq for AbsStructType
Auto Trait Implementations§
impl RefUnwindSafe for AbsStructType
impl Send for AbsStructType
impl Sync for AbsStructType
impl Unpin for AbsStructType
impl UnwindSafe for AbsStructType
Blanket Implementations§
source§impl<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,
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.