Enum moore_vhdl_syntax::ast::StmtData [−][src]
pub enum StmtData {
Show 17 variants
WaitStmt {
on: Option<Spanned<Vec<CompoundName>>>,
until: Option<Expr>,
time: Option<Expr>,
},
AssertStmt {
cond: Expr,
report: Option<Expr>,
severity: Option<Expr>,
},
ReportStmt {
msg: Expr,
severity: Option<Expr>,
},
IfStmt {
conds: Vec<(Expr, StmtBody)>,
alt: Option<StmtBody>,
},
CaseStmt {
qm: bool,
switch: Expr,
cases: Vec<(Choices, StmtBody)>,
},
LoopStmt {
scheme: LoopScheme,
body: StmtBody,
},
NexitStmt {
mode: NexitMode,
target: Option<Spanned<Name>>,
cond: Option<Expr>,
},
ReturnStmt(Option<Expr>),
NullStmt,
IfGenStmt {
conds: Vec<(Expr, GenBody)>,
alt: Option<GenBody>,
},
CaseGenStmt {
switch: Expr,
cases: Vec<(Choices, GenBody)>,
},
ForGenStmt {
param: Spanned<Name>,
range: Expr,
body: GenBody,
},
BlockStmt {
guard: Option<Expr>,
decls: Vec<DeclItem>,
stmts: Vec<Stmt>,
},
ProcStmt {
sensitivity: Option<Sensitivity>,
decls: Vec<DeclItem>,
stmts: Vec<Stmt>,
postponed: bool,
},
AssignStmt {
target: Spanned<AssignTarget>,
kind: AssignKind,
guarded: bool,
mode: Spanned<AssignMode>,
},
SelectAssignStmt {
select: Expr,
qm: bool,
target: Spanned<AssignTarget>,
kind: AssignKind,
guarded: bool,
mode: SelectAssignMode,
waves: Vec<SelectWave>,
},
InstOrCallStmt {
target: Option<InstTarget>,
name: CompoundName,
generics: Option<ParenElems>,
ports: Option<ParenElems>,
},
}
Variants
Fields of LoopStmt
scheme: LoopScheme
body: StmtBody
Fields of ProcStmt
Fields of AssignStmt
Fields of SelectAssignStmt
select: Expr
qm: bool
target: Spanned<AssignTarget>
kind: AssignKind
guarded: bool
mode: SelectAssignMode
waves: Vec<SelectWave>
Fields of InstOrCallStmt
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for StmtData
impl UnwindSafe for StmtData
Blanket Implementations
Mutably borrows from an owned value. Read more