aboutsummaryrefslogtreecommitdiff
path: root/macros/src/lib.rs
AgeCommit message (Collapse)Author
2021-11-25Remove #[deny(warnings)], but deny warnings for CIHenrik Tjäder
2021-11-25Docs: add RTIC logoHenrik Tjäder
2021-03-04Preparing release 0.6.0-alpha.1Emil Fresk
2020-12-03Save, init generation fixedEmil Fresk
2020-11-19Fix the linkHenrik Tjäder
2020-11-19Remove stale documentation, refer to the bookHenrik Tjäder
2020-10-11Now with spawn/schedule from anywhereEmil Fresk
2020-10-05Added back accidentally removed blockEmil Fresk
2020-09-29Keep user code as-is within the module, add exampleHenrik Tjäder
2020-09-25Update documentation where const is replaced by modHenrik Tjäder
2020-09-01Brutally yank out multicoreHenrik Tjäder
2020-06-11Rename RTFM to RTICHenrik Tjäder
2019-09-15fix gh-pages buildJorge Aparicio
2019-08-21doc tweaksJorge Aparicio
2019-08-21document #[app]Jorge Aparicio
2019-08-20adapt to changes in rtfm-syntaxJorge Aparicio
2019-06-20RFC #207Jorge Aparicio
2019-06-18add homogeneous multi-core supportJorge Aparicio
2019-06-13rtfm-syntax refactor + heterogeneous multi-core supportJorge Aparicio
2019-05-08write generated code to disk for easier inspectionJorge Aparicio
now that the generated code is actually readable let's make it easier to access this commit also documents how to inspect the generated code via `rtfm-expansion.rs` and `cargo-expand`
2019-05-01implement RFCs 147 and 155, etc.Jorge Aparicio
This commit: - Implements RFC 147: "all functions must be safe" - Implements RFC 155: "explicit Context parameter" - Implements the pending breaking change #141: reject assign syntax in `init` (which was used to initialize late resources) - Refactors code generation to make it more readable -- there are no more random identifiers in the output -- and align it with the book description of RTFM internals. - Makes the framework hard depend on `core::mem::MaybeUninit` and thus will require nightly until that API is stabilized. - Fixes a ceiling analysis bug where the priority of the system timer was not considered in the analysis. - Shrinks the size of all the internal queues by turning `AtomicUsize` indices into `AtomicU8`s. - Removes the integration with `owned_singleton`.
2018-12-16move macros crate to the 2018 editionJorge Aparicio
2018-12-16properly handle #[cfg] (conditional compilation) on resourcesJorge Aparicio
2018-11-03v0.4.0Jorge Aparicio
closes #32 closes #33
2018-08-24more fixesJorge Aparicio
2018-04-16update parserJorge Aparicio
closes #69 this doesn't change functionality per se but improves diagnostics in some cases. Some hard errors have becomes warnings, for example: when `resources` is empty, or when `idle.path` is set to the default `idle` path.
2018-01-15v0.3.0Jorge Aparicio
2017-11-22v0.2.2Jorge Aparicio
2017-07-29v0.2.0Jorge Aparicio
2017-07-29update examplesJorge Aparicio
2017-07-20doc tweaksJorge Aparicio
2017-07-14rename rtfm! to app! and adapt to changes in rtfm-syntaxJorge Aparicio
2017-07-14split macro parser into its own crate and improve error handling / reportingJorge Aparicio
2017-07-11compiler plugin -> proc macroJorge Aparicio
2017-07-06syntax tweaks, relax check, add set_pending(), deal with imported typesJorge Aparicio
- allow trailing commas in list of resources - make task.resources optional - add rtfm::set_pending function which can be used to force an interrupt into the pending state. This is a replacement of the old rtfm::request. rtfm::set_pending takes the Interrupt enum provided by the device crate as argument. (The old rtfm::request took a task function as argument) - the user may want to use types they imported into the root of the crate. These types are not available in e.g. `mod idle` so `idle::Resources` *can't* be defined in that module. To workaround this problem `idle::Resources` will be defined in the root, with some other name, and then be re-exported in the `idle` module. - remove the "a resource only used by one task should be local data" check. In some cases you do want a resource owned by a single task instead of local data since `init` can access resources but not a task local data.
2017-07-04rtfm! macro take 2Jorge Aparicio