align code blocks with their paragraphs

This commit is contained in:
Tshepang Mbambo 2022-11-04 03:40:37 +02:00
parent 100e801b36
commit f51a573c19
1 changed files with 23 additions and 21 deletions

View File

@ -10,12 +10,13 @@ through all of the compiler layers down to LLVM codegen. Throughout the various
- The template string, which is stored as an array of `InlineAsmTemplatePiece`. Each piece
represents either a literal or a placeholder for an operand (just like format strings).
```rust
pub enum InlineAsmTemplatePiece {
```rust
pub enum InlineAsmTemplatePiece {
String(String),
Placeholder { operand_idx: usize, modifier: Option<char>, span: Span },
}
```
}
```
- The list of operands to the `asm!` (`in`, `[late]out`, `in[late]out`, `sym`, `const`). These are
represented differently at each stage of lowering, but follow a common pattern:
@ -34,8 +35,9 @@ or a `fn`.
- The options set at the end of the `asm!` macro. The only ones that are of particular interest to
rustc are `NORETURN` which makes `asm!` return `!` instead of `()`, and `RAW` which disables format
string parsing. The remaining options are mostly passed through to LLVM with little processing.
```rust
bitflags::bitflags! {
```rust
bitflags::bitflags! {
pub struct InlineAsmOptions: u16 {
const PURE = 1 << 0;
const NOMEM = 1 << 1;
@ -47,8 +49,8 @@ bitflags::bitflags! {
const RAW = 1 << 7;
const MAY_UNWIND = 1 << 8;
}
}
```
}
```
## AST