pub struct WitnessTable<'ctx> { /* private fields */ }Expand description
A Swift witness table symbol.
Implementations§
Source§impl<'ctx> WitnessTable<'ctx>
impl<'ctx> WitnessTable<'ctx>
Sourcepub fn kind(&self) -> WitnessTableKind
pub fn kind(&self) -> WitnessTableKind
Get the kind of witness table.
Sourcepub fn value_witness_kind(&self) -> Option<ValueWitnessKind>
pub fn value_witness_kind(&self) -> Option<ValueWitnessKind>
Get the value witness kind if this is a ValueWitness.
Sourcepub fn conformance(&self) -> Option<ProtocolConformance<'ctx>>
pub fn conformance(&self) -> Option<ProtocolConformance<'ctx>>
Get the protocol conformance information if available.
Sourcepub fn conforming_type(&self) -> Option<TypeRef<'ctx>>
pub fn conforming_type(&self) -> Option<TypeRef<'ctx>>
Get the conforming type.
Sourcepub fn conformance_module(&self) -> Option<&'ctx str>
pub fn conformance_module(&self) -> Option<&'ctx str>
Get the module where the conformance is declared.
Sourcepub fn associated_type_path(&self) -> Vec<&'ctx str>
pub fn associated_type_path(&self) -> Vec<&'ctx str>
Get the associated type path for AssociatedTypeWitnessTableAccessor.
Returns the path as a list of names (e.g., [“A”, “ZZ”] for A.ZZ).
Sourcepub fn associated_type_protocol(&self) -> Option<TypeRef<'ctx>>
pub fn associated_type_protocol(&self) -> Option<TypeRef<'ctx>>
Get the protocol that the associated type conforms to.
For AssociatedTypeWitnessTableAccessor, this is the protocol requirement on the associated type (distinct from the main conformance protocol).
Trait Implementations§
Source§impl<'ctx> Clone for WitnessTable<'ctx>
impl<'ctx> Clone for WitnessTable<'ctx>
Source§fn clone(&self) -> WitnessTable<'ctx>
fn clone(&self) -> WitnessTable<'ctx>
Returns a duplicate 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 WitnessTable<'_>
impl Debug for WitnessTable<'_>
Source§impl Display for WitnessTable<'_>
impl Display for WitnessTable<'_>
impl<'ctx> Copy for WitnessTable<'ctx>
Auto Trait Implementations§
impl<'ctx> Freeze for WitnessTable<'ctx>
impl<'ctx> RefUnwindSafe for WitnessTable<'ctx>
impl<'ctx> !Send for WitnessTable<'ctx>
impl<'ctx> !Sync for WitnessTable<'ctx>
impl<'ctx> Unpin for WitnessTable<'ctx>
impl<'ctx> UnsafeUnpin for WitnessTable<'ctx>
impl<'ctx> UnwindSafe for WitnessTable<'ctx>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more