Enum ra_ap_hir::Adt[][src]

pub enum Adt {
    Struct(Struct),
    Union(Union),
    Enum(Enum),
}
Expand description

A Data Type

Variants

Struct(Struct)
Union(Union)
Enum(Enum)

Implementations

impl Adt[src]

pub fn has_non_default_type_params(self, db: &dyn HirDatabase) -> bool[src]

pub fn ty(self, db: &dyn HirDatabase) -> Type[src]

Turns this ADT into a type. Any type parameters of the ADT will be turned into unknown types, which is good for e.g. finding the most general set of completions, but will not look very nice when printed.

pub fn module(self, db: &dyn HirDatabase) -> Module[src]

pub fn name(self, db: &dyn HirDatabase) -> Name[src]

Trait Implementations

impl Clone for Adt[src]

fn clone(&self) -> Adt[src]

Returns a copy of the value. Read more

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Debug for Adt[src]

fn fmt(&self, f: &mut Formatter<'_>) -> Result[src]

Formats the value using the given formatter. Read more

impl From<Adt> for ModuleDef[src]

fn from(it: Adt) -> ModuleDef[src]

Performs the conversion.

impl From<Adt> for GenericDef[src]

fn from(it: Adt) -> GenericDef[src]

Performs the conversion.

impl From<AdtId> for Adt[src]

fn from(id: AdtId) -> Self[src]

Performs the conversion.

impl From<Enum> for Adt[src]

fn from(it: Enum) -> Adt[src]

Performs the conversion.

impl From<Struct> for Adt[src]

fn from(it: Struct) -> Adt[src]

Performs the conversion.

impl From<Union> for Adt[src]

fn from(it: Union) -> Adt[src]

Performs the conversion.

impl HasAttrs for Adt[src]

fn attrs(self, db: &dyn HirDatabase) -> AttrsWithOwner[src]

fn docs(self, db: &dyn HirDatabase) -> Option<Documentation>[src]

fn resolve_doc_path(
    self,
    db: &dyn HirDatabase,
    link: &str,
    ns: Option<Namespace>
) -> Option<ModuleDef>
[src]

impl Hash for Adt[src]

fn hash<__H: Hasher>(&self, state: &mut __H)[src]

Feeds this value into the given Hasher. Read more

fn hash_slice<H>(data: &[Self], state: &mut H) where
    H: Hasher
1.3.0[src]

Feeds a slice of this type into the given Hasher. Read more

impl HirDisplay for Adt[src]

fn hir_fmt(&self, f: &mut HirFormatter<'_>) -> Result<(), HirDisplayError>[src]

fn into_displayable(
    &'a self,
    db: &'a (dyn HirDatabase + 'a),
    max_size: Option<usize>,
    omit_verbose_types: bool,
    display_target: DisplayTarget
) -> HirDisplayWrapper<'a, Self>
[src]

Returns a Displayable type that is human-readable.

fn display(
    &'a self,
    db: &'a (dyn HirDatabase + 'a)
) -> HirDisplayWrapper<'a, Self>
[src]

Returns a Displayable type that is human-readable. Use this for showing types to the user (e.g. diagnostics) Read more

fn display_truncated(
    &'a self,
    db: &'a (dyn HirDatabase + 'a),
    max_size: Option<usize>
) -> HirDisplayWrapper<'a, Self>
[src]

Returns a Displayable type that is human-readable and tries to be succinct. Use this for showing types to the user where space is constrained (e.g. doc popups) Read more

fn display_source_code(
    &'a self,
    db: &'a (dyn HirDatabase + 'a),
    module_id: ModuleId
) -> Result<String, DisplaySourceCodeError>
[src]

Returns a String representation of self that can be inserted into the given module. Use this when generating code (e.g. assists) Read more

fn display_test(
    &'a self,
    db: &'a (dyn HirDatabase + 'a)
) -> HirDisplayWrapper<'a, Self>
[src]

Returns a String representation of self for test purposes

impl PartialEq<Adt> for Adt[src]

fn eq(&self, other: &Adt) -> bool[src]

This method tests for self and other values to be equal, and is used by ==. Read more

fn ne(&self, other: &Adt) -> bool[src]

This method tests for !=.

impl Copy for Adt[src]

impl Eq for Adt[src]

impl StructuralEq for Adt[src]

impl StructuralPartialEq for Adt[src]

Auto Trait Implementations

impl RefUnwindSafe for Adt

impl Send for Adt

impl Sync for Adt

impl Unpin for Adt

impl UnwindSafe for Adt

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

impl<T> Cast for T

fn cast<U>(self, interner: &<U as HasInterner>::Interner) -> U where
    Self: CastTo<U>,
    U: HasInterner, 

Cast a value to type U using CastTo.

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

pub fn equivalent(&self, key: &K) -> bool[src]

Compare self to key and return true if they are equal.

impl<T> From<T> for T[src]

pub fn from(t: T) -> T[src]

Performs the conversion.

impl<T> HasResolver for T where
    T: Into<AdtId> + Copy
[src]

pub fn resolver(self, db: &dyn DefDatabase) -> Resolver[src]

Builds a resolver for type references inside this def.

impl<T> Instrument for T[src]

fn instrument(self, span: Span) -> Instrumented<Self>[src]

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

fn in_current_span(self) -> Instrumented<Self>[src]

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

pub fn into(self) -> U[src]

Performs the conversion.

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

pub fn to_owned(&self) -> T[src]

Creates owned data from borrowed data, usually by cloning. Read more

pub fn clone_into(&self, target: &mut T)[src]

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

Uses borrowed data to replace owned data, usually by cloning. Read more

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]

Performs the conversion.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]

Performs the conversion.

impl<T> Any for T where
    T: Any

impl<T> CloneAny for T where
    T: Any + Clone