pub enum PortData<'a> {
Intf {
modport: Option<Spanned<Name>>,
name: Spanned<Name>,
dims: Vec<TypeDim<'a>>,
expr: Option<Expr<'a>>,
},
Explicit {
dir: Option<PortDir>,
name: Spanned<Name>,
expr: Option<Expr<'a>>,
},
Named {
dir: Option<PortDir>,
kind: Option<VarKind>,
ty: Type<'a>,
name: Spanned<Name>,
dims: Vec<TypeDim<'a>>,
expr: Option<Expr<'a>>,
},
Implicit(Expr<'a>),
}Expand description
A module or interface port as declared in the port list.
Variants§
Trait Implementations§
Source§impl<'a> AcceptVisitor<'a> for PortData<'a>
impl<'a> AcceptVisitor<'a> for PortData<'a>
Source§impl<'a> AnyNodeData for PortData<'a>
impl<'a> AnyNodeData for PortData<'a>
Source§fn get_name(&self) -> Option<Spanned<Name>>
fn get_name(&self) -> Option<Spanned<Name>>
Get this node’s name, or
None if it does not have one.Source§fn fmt_indefinite(&self, fmt: &mut Formatter<'_>) -> Result
fn fmt_indefinite(&self, fmt: &mut Formatter<'_>) -> Result
Describe this node for diagnostics in indefinite form, e.g. “entity”. Read more
Source§fn fmt_definite(&self, fmt: &mut Formatter<'_>) -> Result
fn fmt_definite(&self, fmt: &mut Formatter<'_>) -> Result
Describe this node for diagnostics in definite form, e.g. “entity
‘top’”. Read more
fn as_data(&self) -> &dyn AnyNodeDatawhere
Self: Sized,
Source§fn format_indefinite(&self) -> FormatNodeIndefinite<'_>where
Self: Sized,
fn format_indefinite(&self) -> FormatNodeIndefinite<'_>where
Self: Sized,
Describe this node for diagnostics in indefinite form, e.g. “entity”.
Source§fn format_definite(&self) -> FormatNodeDefinite<'_>where
Self: Sized,
fn format_definite(&self) -> FormatNodeDefinite<'_>where
Self: Sized,
Describe this node for diagnostics in definite form, e.g. “entity
‘top’”.
Source§fn to_indefinite_string(&self) -> Stringwhere
Self: Sized,
fn to_indefinite_string(&self) -> Stringwhere
Self: Sized,
Describe this node for diagnostics in indefinite form, e.g. “entity”.
Source§fn to_definite_string(&self) -> Stringwhere
Self: Sized,
fn to_definite_string(&self) -> Stringwhere
Self: Sized,
Describe this node for diagnostics in definite form, e.g. “entity
‘top’”.
Source§impl<'a> ForEachChild<'a> for PortData<'a>
impl<'a> ForEachChild<'a> for PortData<'a>
Source§fn for_each_child(&'a self, each: &mut dyn FnMut(&'a dyn AnyNode<'a>))
fn for_each_child(&'a self, each: &mut dyn FnMut(&'a dyn AnyNode<'a>))
Apply a function to each child node.
Source§impl<'a> ForEachNode<'a> for PortData<'a>
impl<'a> ForEachNode<'a> for PortData<'a>
Source§fn for_each_node(&'a self, each: &mut dyn FnMut(&'a dyn AnyNode<'a>))
fn for_each_node(&'a self, each: &mut dyn FnMut(&'a dyn AnyNode<'a>))
Apply a function to this node.
impl<'a> Eq for PortData<'a>
impl<'a> StructuralPartialEq for PortData<'a>
Auto Trait Implementations§
impl<'a> !Freeze for PortData<'a>
impl<'a> !RefUnwindSafe for PortData<'a>
impl<'a> Send for PortData<'a>
impl<'a> Sync for PortData<'a>
impl<'a> Unpin for PortData<'a>
impl<'a> !UnwindSafe for PortData<'a>
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