[][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

Named(TyNameTypeMarkRef)

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.

Methods

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<'ctx> From<&'ctx Ty> for TypeCtx<'ctx>
[src]

impl From<IntTy> for Ty
[src]

impl From<EnumTy> for Ty
[src]

impl From<PhysicalTy> for Ty
[src]

impl From<ArrayTy> for Ty
[src]

impl From<RecordTy> for Ty
[src]

impl From<SubprogTy> for Ty
[src]

impl Eq for Ty
[src]

impl Clone for Ty
[src]

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

Performs copy-assignment from source. Read more

impl PartialEq<Ty> for Ty
[src]

impl Debug for Ty
[src]

impl Display 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<IntfVarRef, &'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<IntfFileRef, &'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<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<SubtypeDeclRef, &'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<'lazy, 'sb, 'ast, 'ctx> NodeMaker<SignalRef, &'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<LatentTypeMarkRef, &'ctx Ty> for ScoreContext<'lazy, 'sb, 'ast, 'ctx>
[src]

Auto Trait Implementations

impl Send for Ty

impl Sync for Ty

Blanket Implementations

impl<T> From for T
[src]

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

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

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

type Owned = T

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

type Error = !

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

The type returned in the event of a conversion error.

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

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

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

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

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

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

The type returned in the event of a conversion error.