You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add new items at the end of the relevant section under **Unreleased**.
5
-
-->
3
+
All notable changes to this project will be documented in this file.
6
4
7
-
This project follows semantic versioning. While still in major version `0`, source-stability is only guaranteed within minor versions (e.g. between `0.0.3` and `0.0.4`). If you want to guard against potentially source-breaking package updates, you can specify your package dependency using `.upToNextMinor(from: "0.0.1")` as the requirement.
5
+
This changelog's format is based on
6
+
[Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
7
+
8
+
This project follows [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
9
+
While still in major version `0`, source-stability is only guaranteed within
10
+
minor versions (e.g. between `0.0.3` and `0.0.4`). If you want to guard against
11
+
potentially source-breaking package updates, you can specify your package
12
+
dependency using `.upToNextMinor(from: "0.0.1")` as the requirement.
8
13
9
14
## [Unreleased]
10
15
11
16
*No changes yet.*
12
17
18
+
<!--
19
+
Add new items at the end of the relevant section under **Unreleased**.
20
+
-->
21
+
13
22
---
14
23
15
-
## [0.0.1] - 2023-9-12
24
+
## [0.0.1] - 2023-11-17
16
25
17
26
-**Swift MMIO** initial release.
18
27
19
-
---
28
+
### Additions
20
29
21
-
This changelog's format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
30
+
- Introduces `@RegisterBank` and `@RegisterBank(offset:)` macros, enabling you
31
+
to define register groups directly in Swift code. [#2]
32
+
- Introduces `@Register` macro and bit field macros (`@Reserved`, `@ReadWrite`,
33
+
`@ReadOnly`, `@WriteOnly`) for declaring registers composed of bit fields. Bit
34
+
field macros take a range parameter which describes the subset of bits they
35
+
reference (e.g., `@ReadWrite(bits: 3..<7)`). [#4]
36
+
- Enhances bit field macros to support discontiguous bit fields. They now accept
37
+
a variadic list of bit ranges and automatically handle scattering/gathering
38
+
from the relevant bits (e.g., `@ReadWrite(bits: 3..<7, 10..<12)`). [#10]
39
+
- Enhances bit field macros with type projections via a new `as:` parameter.
40
+
Projections allow you to operation on bit fields using strong types instead of
41
+
raw integers (e.g. `@ReadWrite(bits: 3..<7, as: A.self)`) [#27]
42
+
- Enhances registers with support for interposing reads and writes when
43
+
compiling with `FEATURE_INTERPOSABLE`. You can use interposers to unit test
44
+
drivers. This feature is enabled when building with the
0 commit comments