Difference between revisions of "Rust"
m (Add links to docs on STM32 Rust crates) |
m (Add section q Panic Handling q) |
||
| Line 52: | Line 52: | ||
* https://crates.io/crates/stm32f4 | * https://crates.io/crates/stm32f4 | ||
| + | |||
| + | == [[#top|^]] Panic Handling == | ||
| + | |||
| + | * https://github.com/rust-lang/cargo/issues/2738 | ||
| + | |||
| + | When setting panic compilation to 'abort' on panic, may be necessary to write one's own panic function: | ||
| + | |||
| + | * https://stackoverflow.com/questions/75310867/rust-no-std-static-lib-panic-handler | ||
== [[#top|^]] Questions to Answer == | == [[#top|^]] Questions to Answer == | ||
Revision as of 16:15, 16 January 2026
Notes on Rust programming language
Overview
This local page about the programming language of Rust aims to answer among other questions: How suitable is Rust for embedded development?
Rust By Example (RBE) home page here:
MIT mirror of Rust introduction by chapters:
^ Organizations for Rust
^ Installation and Other Specific Notes
Install Rust on Ubuntu:
Adoption and popularity of Rust:
2025-12-16
Rust crates
^ Rust for Embedded Systems
Rust language for embedded systems:
Rust crates for STM32:
^ Panic Handling
When setting panic compilation to 'abort' on panic, may be necessary to write one's own panic function:
^ Questions to Answer
(1) For what is Rust language 'derive' keyword used?
#[derive(Clone)]
#[derive(Default)]
(2) How is the `.await` method working, and is this kind of element called a method in Rust?
(3) Rust `match` construct, is this equal to C switch statement?
(4) what does at or near top of source file `use defmt::*;` mean?
(5) Rust `impl` a keyword? Seeing this in lines like `impl CanTxChannel`.
(6) `.await.unwrap()` versus `.await`?
(7) What is the following forward arrow operator in this context?:
pub async fn <function_name>(var declarations) -> () { ... }
(8) What mean the following top of file lines?:
#![no_std] #![no_main]