Ensure repr and values of tags! variants

This commit is contained in:
A. Molzer committed 2026-01-08 19:53:47 +01:00
1 parent ee8d13249e
commit fee650d7f6
2 files changed
+15 -1

No files matched your search

+13
View File
@@ -1,3 +1,16 @@
# Version 0.11.1 (Unreleased)
Fixes:
- The enumeration types in `tags` are now all marked with a representation of
their underlying TIFF type (e.g. `repr(u16)`) and variants are explicitly
assigned their corresponding values. That is you may _read_ the raw
discriminant and interpret that as the value—except for `Unknown` variants.
Additions:
- Types in `tags` now generally implement `TiffValue` and can be handed to the
`DirectoryEncoder::write_tag` method. Unlike primitive types they do _not_
always implement the trait for slices of themselves.
# Version 0.11.0
- `Directory` now implements `FromIterator<(Tag, Value)>`.
+2 -1
View File
@@ -10,8 +10,9 @@ macro_rules! tags {
$( #[$enum_attr] )*
#[derive(Clone, Copy, PartialEq, Eq, Debug, Hash)]
#[non_exhaustive]
#[repr($ty)]
pub enum $name {
$($(#[$ident_attr])* $tag,)*
$($(#[$ident_attr])* $tag = $val,)*
$(
#[$unknown_meta]
Unknown($ty),