aboutsummaryrefslogtreecommitdiff
path: root/src/examples/_6_full_syntax.rs
blob: 805206578d357303e96b9afe542656d928f177e4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
//! A showcase of the `app!` macro syntax
//!
//! ```
//! #![deny(unsafe_code)]
//! #![feature(proc_macro)]
//! #![no_std]
//! 
//! extern crate cortex_m_rtfm as rtfm;
//! extern crate stm32f103xx;
//! 
//! use rtfm::{app, Threshold};
//! 
//! app! {
//!     device: stm32f103xx,
//! 
//!     resources: {
//!         static CO_OWNED: u32 = 0;
//!         static ON: bool = false;
//!         static OWNED: bool = false;
//!         static SHARED: bool = false;
//!     },
//! 
//!     init: {
//!         // This is the path to the `init` function
//!         //
//!         // `init` doesn't necessarily has to be in the root of the crate
//!         path: main::init,
//!     },
//! 
//!     idle: {
//!         // This is a path to the `idle` function
//!         //
//!         // `idle` doesn't necessarily has to be in the root of the crate
//!         path: main::idle,
//!         resources: [OWNED, SHARED],
//!     },
//! 
//!     tasks: {
//!         SYS_TICK: {
//!             path: sys_tick,
//!             // If omitted priority is assumed to be 1
//!             // priority: 1,
//!             resources: [CO_OWNED, ON, SHARED],
//!         },
//! 
//!         TIM2: {
//!             // Tasks are enabled, between `init` and `idle`, by default but they
//!             // can start disabled if `false` is specified here
//!             enabled: false,
//!             path: tim2,
//!             priority: 1,
//!             resources: [CO_OWNED],
//!         },
//!     },
//! }
//! 
//! mod main {
//!     use rtfm::{self, Resource, Threshold};
//! 
//!     pub fn init(_p: ::init::Peripherals, _r: ::init::Resources) {}
//! 
//!     pub fn idle(t: &mut Threshold, mut r: ::idle::Resources) -> ! {
//!         loop {
//!             *r.OWNED != *r.OWNED;
//! 
//!             if *r.OWNED {
//!                 if r.SHARED.claim(t, |shared, _| **shared) {
//!                     rtfm::wfi();
//!                 }
//!             } else {
//!                 r.SHARED.claim_mut(t, |shared, _| **shared = !**shared);
//!             }
//!         }
//!     }
//! }
//! 
//! fn sys_tick(_t: &mut Threshold, r: SYS_TICK::Resources) {
//!     **r.ON = !**r.ON;
//! 
//!     **r.CO_OWNED += 1;
//! }
//! 
//! fn tim2(_t: &mut Threshold, r: TIM2::Resources) {
//!     **r.CO_OWNED += 1;
//! }
//! ```
// Auto-generated. Do not modify.
ble>
aboutsummaryrefslogtreecommitdiff
path: root/src/blob.zig (unfollow)
n>/+277
AgeCommit message (Expand)AuthorFilesLines
2022-10-21Fix "/" in exampleGravatar Jarred Sumner 1-3/+10
2022-10-21Fix infinite loopGravatar Jarred Sumner 1-3/+13
2022-10-21micro-optimizeGravatar Jarred Sumner 1-7/+14
2022-10-20Update install script to use secure flagsGravatar Ashcon Partovi 2-5/+5
2022-10-20Add installation method for HomebrewGravatar Ashcon Partovi 1-0/+7
2022-10-20Fix crash in `highWaterMark`Gravatar Jarred Sumner 1-143/+144
2022-10-20Fix Bun.serve error handler error param (#1359)Gravatar zhiyuan 7-4/+37
2022-10-19Fix calling `ws.publish` inside `close` when other clients are connectedGravatar Jarred Sumner 3-28/+111
2022-10-19Cache dir loader: Prefer `$BUN_INSTALL` and `$XDG_CACHE_HOME` to `$HOME`. (#1...Gravatar Lucas Garron 1-5/+5
2022-10-19Improve issue templates (#1353)Gravatar Ashcon Partovi 8-89/+136
2022-12-01[`bun:sqlite`] ~15% perf improvement to all() and get()Gravatar Jarred Sumner 2-79/+175
2022-12-013x faster `TextEncoder.prototype.encodeInto`Gravatar Jarred Sumner 4-23/+32
2022-12-01Add test for DOMJIT call version of encodeIntoGravatar Jarred Sumner 1-2/+7
2022-12-01Fix crash in test runner with gc modeGravatar Jarred Sumner 2-1/+4
2022-12-01Include size of ArrayBuffer and others in GC timer schedulingGravatar Jarred Sumner 1-1/+1
2022-12-01Incorrect readmeGravatar Jarred Sumner 1-1/+1
2022-12-01Increase sensitivity of GC timersGravatar Jarred Sumner 1-2/+3
2022-12-01Reduce memory usage in Bun.serve() by up to 3x (#1569)Gravatar Jarred Sumner 16-37/+216
2022-11-30formatting and remove commentGravatar Dylan Conway 2-13/+10
2022-11-30fix slow regex testsGravatar Dylan Conway 1-20/+26
2022-11-30Fix console.log regression with emojiGravatar Jarred Sumner 2-2/+6
2022-11-30Redirect imports to `"readable-stream"` -> `"node:stream"`Gravatar Jarred Sumner 1-1/+4
2022-11-30Accidentally deleted `prompt` as a result of the process.env changesGravatar Jarred Sumner 2-7/+1
2022-11-29:scissors:Gravatar Jarred Sumner 5-626/+7
2022-11-29Remove some dead bindings codeGravatar Jarred Sumner 7-1401/+69
2022-11-29import everything from "bun" where possibleGravatar Jarred Sumner 161-739/+621
2022-11-28Make .toInt64 fasterGravatar Jarred Sumner 1-0/+8
2022-11-28Handle when the process already exited immediatelyGravatar Jarred Sumner 3-38/+47
2022-11-28toHaveProperty and tests (#1558)Gravatar Dylan Conway 8-118/+532
2022-11-28Fix failing spawn() and spawnSync() testsGravatar Jarred Sumner 7-143/+317
2022-11-28Update README.mdGravatar Jarred Sumner 1-1/+26
2022-11-28Update README.mdGravatar Jarred Sumner 1-5/+5
2022-11-28Add small section about profiling bunGravatar Jarred Sumner 1-0/+171
2022-11-28Fix hanging in FIFO streamsGravatar Jarred Sumner 1-1/+2
2022-11-28[internal] Add debug timerGravatar Jarred Sumner 2-2/+33
2022-11-28Ensure we report errors in controller.closeGravatar Jarred Sumner 1-1/+9
2022-11-28Update JSEnvironmentVariableMap.cppGravatar Jarred Sumner 1-1/+1
2022-11-28Allow overriding node:fsGravatar Jarred Sumner 1-0/+9
2022-11-28Add test for processGravatar Jarred Sumner 1-3/+14
2022-11-28Fix process.env and Bun.env object spreadGravatar Jarred Sumner 8-204/+127
2022-11-27Fix `console.log(process.env)`Gravatar Jarred Sumner 2-20/+27