enum_variant_eq 0.1.0

Determining that enumerations only have Variant equal
Documentation
  • Coverage
  • 33.33%
    1 out of 3 items documented1 out of 2 items with examples
  • Size
  • Source code size: 7.44 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 1.06 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 12s Average build duration of successful builds.
  • all releases: 12s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • Homepage
  • A4-Tacks/rust-enum_variant_eq
    0 0 0
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • A4-Tacks

Determining that enumerations only have Variant equal

Examples

use enum_variant_eq::{*,enum_variant_eq_derive::*};

#[derive(Debug, EnumVariantEq)]
enum TestEnum {
    Unit,
    EmptyUnNamed(),
    UnNamed(i8),
    UnNamed2(i8, u8),
    EmptyNamed {},
    Named { x: i8 },
    Named2 { x: i8, y: u8 },
}
use TestEnum::*;
assert!(Unit.enum_variant_eq(&Unit));
assert!(UnNamed(5).enum_variant_eq(&UnNamed(8)));
assert!(Named { x: 5 }.enum_variant_eq(&Named { x: 8 }));

Errors

EnumVariantEq only applies to enumerations. If it is violated, the compilation will panic

#[derive(EnumVariantEq)]
struct S;
error: #[derive(Debug, EnumVariantEq)]
    |                  ^^^^^^^^^^^^^
    = help: message: Type Is Not Enum

Other:

Build Ast Error