pub enum Statement {
Show 13 variants
Label(String, Span),
Instruction(Instruction),
Data(DataDecl),
Align(AlignDirective),
Const(ConstDef),
Fill(FillDirective),
Space(SpaceDirective),
Org(OrgDirective),
CodeMode(X86Mode, Span),
Ltorg(Span),
OptionRvc(bool, Span),
ThumbMode(bool, Span),
ThumbFunc(Span),
}Expand description
A statement in the IR.
Variants§
Label(String, Span)
A label definition.
Instruction(Instruction)
An instruction.
Data(DataDecl)
A data declaration (.byte, .word, .ascii, etc.).
Align(AlignDirective)
An alignment directive.
Const(ConstDef)
A constant definition (.equ, .set, =).
Fill(FillDirective)
A .fill directive.
Space(SpaceDirective)
A .space / .skip directive.
Org(OrgDirective)
An .org directive.
CodeMode(X86Mode, Span)
A code-mode switch (.code16, .code32, .code64).
Ltorg(Span)
A literal pool flush point (.ltorg / .pool).
OptionRvc(bool, Span)
A RISC-V .option rvc / .option norvc directive.
ThumbMode(bool, Span)
A .thumb / .arm mode switch directive (true = Thumb, false = ARM).
ThumbFunc(Span)
A .thumb_func directive — marks the next label as a Thumb function.
Trait Implementations§
impl StructuralPartialEq for Statement
Auto Trait Implementations§
impl Freeze for Statement
impl RefUnwindSafe for Statement
impl Send for Statement
impl Sync for Statement
impl Unpin for Statement
impl UnwindSafe for Statement
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