这是indexloc提供的服务,不要输入任何密码
Skip to content

Conversation

@hawkw
Copy link
Owner

@hawkw hawkw commented Aug 8, 2022

No description provided.

hawkw added 3 commits August 8, 2022 10:10
Turns out this will recur infinitely, because it calls `self`'s
`fmt::Binary` impl instead of `self.0`'s (the actual integer value).
WHOOPS!
This adds generated implementations of the `UpperHex` and `LowerHex`
formatting traits to bitfield types.
For `fmt::UpperHex`, `fmt::LowerHex`, and `fmt::Binary`, the "alt mode"
format controls whether or not a leading `0x` or `0b` prefix is emitted.
However, for the implementations of those traits on generated bitfield
types, it will also effect the formatting behavior of `fmt::DebugTuple`
(enabling multi-line format), as the generated format impls currently
use `DebugTuple`.

This commit removes the use of `DebugTuple`, and changes the types to
just generate their own tuple-struct-like formatting. This way, we won't
output a multiline format for a bitfield type just because the user
wanted a leading `0b` prefix or `0x` prefix.
@hawkw hawkw enabled auto-merge (rebase) August 8, 2022 17:19
@hawkw hawkw merged commit 03055f0 into main Aug 8, 2022
@hawkw hawkw deleted the eliza/bit-misc branch August 8, 2022 17:26
hawkw added a commit that referenced this pull request Aug 8, 2022
Turns out this will recur infinitely, because it calls `self`'s
`fmt::Binary` impl instead of `self.0`'s (the actual integer value).
WHOOPS!
hawkw added a commit that referenced this pull request Aug 8, 2022
This adds generated implementations of the `UpperHex` and `LowerHex`
formatting traits to bitfield types.
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.

2 participants