Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refac(hal-x86_64): use mycelium-bitfield for segment descrs #295

Merged
merged 3 commits into from
Aug 10, 2022

Conversation

hawkw
Copy link
Owner

@hawkw hawkw commented Aug 10, 2022

This commit changes the segment::Descriptor implementation to use
mycelium-bitfield rather than bitflags + our packing specs. This
lets us remove the bitflags dep entirely.

This adds a generic parameter to `Pack{N}::pair_with` so that a pair can
be created between packing spec defined on two different generated
bitfield types.
This adds generics to the `Packing{N}` struct's `set_all`, `unset_all`,
and similar methods, so that they can be used to flip all the bits in a
typed packing spec.
This commit changes the `segment::Descriptor` implementation to use
`mycelium-bitfield` rather than `bitflags` + our packing specs. This
lets us remove the `bitflags` dep entirely.
@hawkw hawkw enabled auto-merge (rebase) August 10, 2022 16:08
@hawkw hawkw merged commit 82e9e67 into main Aug 10, 2022
@hawkw hawkw deleted the eliza/seg-descr-bitfield branch August 10, 2022 16:14
hawkw added a commit that referenced this pull request Aug 10, 2022
This adds a generic parameter to `Pack{N}::pair_with` so that a pair can
be created between packing spec defined on two different generated
bitfield types.
hawkw added a commit that referenced this pull request Aug 10, 2022
This adds generics to the `Packing{N}` struct's `set_all`, `unset_all`,
and similar methods, so that they can be used to flip all the bits in a
typed packing spec.
hawkw added a commit that referenced this pull request Jul 23, 2023
## mycelium-bitfield-v0.1.3 - (2023-07-23)

[d0a6f13](https://github.com/hawkw/mycelium/d0a6f13cc53e0cd5dbd493b63ba0711fd06dc985)...[ab096b4](https://github.com/hawkw/mycelium/ab096b4bcf64beda092b3980ca32cb50ad4c2682)

### Added

- Generate `fmt::UpperHex` and `LowerHex`
  ([#292](#292))
  ([b6138c8](https://github.com/hawkw/mycelium/b6138c8b7b704c59e394fd5600c321d7eede0a46))
- Add `Pack::pair_with`
  ([#294](#294))
  ([47b08b7](https://github.com/hawkw/mycelium/47b08b7506712cf5664cf62bf5f0c72fa226a994))
- Add `Pair::pack_from_{src, dst}`
  ([#294](#294))
  ([48f48ca](https://github.com/hawkw/mycelium/48f48cab628c88edc4fa3ce6a045c522976a62e7))
- Skip `_` fields in `fmt::Debug`
  ([#375](#375))
  ([46ca526](https://github.com/hawkw/mycelium/46ca52615338f5341fd0006b56a20379a1a797de))
- Add `display_ascii` to generated bitfields
  ([#420](#420))
  ([7842802](https://github.com/hawkw/mycelium/7842802e1b52da0d7939c972b69964cddc4f875a))
- Select Unicode format with `Display` alt-mode
  ([#420](#420))
  ([a09d55b](https://github.com/hawkw/mycelium/a09d55b7dd81aed292ec8265ce28c8f70f0b293d))
- Add `enum_from_bits!` macro
  ([#450](#450))
  ([ab096b4](https://github.com/hawkw/mycelium/ab096b4bcf64beda092b3980ca32cb50ad4c2682),
  closes [#443](#443))

### Documented

- Fix main branch docs link
  ([#290](#290))
  ([4dbdf37](https://github.com/hawkw/mycelium/4dbdf376aab37ba88d48abf6c25ec2f386f62c44))
- Replace tables with bulleted lists
  ([#451](#451))
  ([10cd876](https://github.com/hawkw/mycelium/10cd8765964ce98e18787f7ba5c299ed7a11a86d))

### Fixed

- Remove recursion in `fmt::Binary`
  ([#292](#292))
  ([0488696](https://github.com/hawkw/mycelium/04886961ba460fceb662fdff8f80d481e54ed241))
- Don't have `fmt::alt` control struct formatting
  ([#292](#292))
  ([03055f0](https://github.com/hawkw/mycelium/03055f086dbdbb68be6cb2a6eef96ffa450df61c))
- Make `pair_with` work with other bitfields
  ([#295](#295))
  ([532ee98](https://github.com/hawkw/mycelium/532ee987e0eddd203fc7ff3698a4c9f36232c669))
- Make `Packing` work with typed specs
  ([#295](#295))
  ([7b86e81](https://github.com/hawkw/mycelium/7b86e811a77831f4745e2b9437b3125ac27be8c8))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant