[][src]Enum moore_vhdl::ty::Ty

pub enum Ty {
    Named(TyNameTypeMarkRef),
    Null,
    Int(IntTy),
    UniversalInt,
    UnboundedInt,
    Enum(EnumTy),
    Physical(PhysicalTy),
    Access(Box<Ty>),
    Array(ArrayTy),
    File(Box<Ty>),
    Record(RecordTy),
    Subprog(SubprogTy),
}

Variants

A named type. In a signal declaration for example, the source code mentions the type of the signal. This type name is resolved to its actual declaration somewhere else in the source code. Thus this type acts as a sort of "pointer" to a type, together with information on how the source code referred to that type. This helps make error messages easier to read for the user.

Null

The null type.

Int(IntTy)

An integer type.

UniversalInt

A universal integer type.

UnboundedInt

An unbounded integer type. This is the type integers have that are evaluated at compile time, e.g. as part of a range expression. Cannot be mapped to LLHD.

Enum(EnumTy)

An enumeration type.

Physical(PhysicalTy)

A physical type.

Access(Box<Ty>)

An access type.

Array(ArrayTy)

An array type.

File(Box<Ty>)

A file type.

Record(RecordTy)

A record type.

Subprog(SubprogTy)

A subprogram type.

Implementations

impl Ty[src]

pub fn kind_desc(&self) -> &'static str[src]

Provide a textual description of the kind of type. For example, if called on an integer type, the result is "integer type", without any information on the exact nature of the integer.

pub fn is_int(&self) -> bool[src]

Check if this type is an integer.

pub fn is_real(&self) -> bool[src]

Check if this type is a real.

Trait Implementations

impl Clone for Ty[src]

impl Debug for Ty[src]

impl Display for Ty[src]

impl Eq for Ty[src]

impl<'ctx> From<&'ctx Ty> for TypeCtx<'ctx>[src]

impl From<ArrayTy> for Ty[src]

impl From<EnumTy> for Ty[src]

impl From<IntTy> for Ty[src]

impl From<PhysicalTy> for Ty[src]

impl From<RecordTy> for Ty[src]

impl From<SubprogTy> for Ty[src]

impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<IntfConstRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>[src]

impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<IntfFileRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>[src]

impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<IntfObjRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>[src]

impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<IntfSignalRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>[src]

impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<IntfVarRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>[src]

impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<LatentTypeMarkRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>[src]

impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<SignalRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>[src]

impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<SubtypeDeclRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>[src]

impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<SubtypeIndRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>[src]

impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<TypeDeclRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>[src]

impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<TypeMarkRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>[src]

impl<'lazy, 'sb, 'ast, 'ctx> NodeMaker<TypedNodeRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>[src]

impl PartialEq<Ty> for Ty[src]

impl StructuralEq for Ty[src]

impl StructuralPartialEq for Ty[src]

Auto Trait Implementations

impl RefUnwindSafe for Ty[src]

impl Send for Ty[src]

impl Sync for Ty[src]

impl Unpin for Ty[src]

impl UnwindSafe for Ty[src]

Blanket Implementations

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

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

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

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

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

impl<T> Pointable for T

type Init = T

The type for initializers.

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

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[src]

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.

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.