1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
|
error: `#[derive(EnumSetType)]` currently only supports discriminants up to 127.
--> tests/compile-fail/variants.rs:5:5
|
5 | Variant = 128,
| ^^^^^^^^^^^^^
error: Enum set discriminants must be `u32`s. (larger discrimiants are still unsupported with reprs that allow them.)
--> tests/compile-fail/variants.rs:11:15
|
11 | Variant = 0x100000000,
| ^^^^^^^^^^^
error: `#[derive(EnumSetType)]` currently only supports enums up to 128 variants.
--> tests/compile-fail/variants.rs:22:95
|
22 | _113, _114, _115, _116, _117, _118, _119, _120, _121, _122, _123, _124, _125, _126, _127, _128,
| ^^^^
error: Enum set discriminants must be `u32`s.
--> tests/compile-fail/variants.rs:27:5
|
27 | Variant = -1,
| ^^^^^^^^^^^^
error: `#[derive(EnumSetType)]` can only be used on fieldless enums.
--> tests/compile-fail/variants.rs:38:5
|
38 | Variant(u32),
| ^^^^^^^^^^^^
error: serialize_repr cannot be smaller than bitset.
--> tests/compile-fail/variants.rs:41:10
|
41 | #[derive(EnumSetType)]
| ^^^^^^^^^^^
|
= note: this error originates in the derive macro `EnumSetType` (in Nightly builds, run with -Z macro-backtrace for more info)
error: `#[derive(EnumSetType)]` may only be used on enums
--> tests/compile-fail/variants.rs:48:1
|
48 | / struct BadItemType {
49 | |
50 | | }
| |_^
error: repr cannot be smaller than bitset.
--> tests/compile-fail/variants.rs:52:10
|
52 | #[derive(EnumSetType)]
| ^^^^^^^^^^^
|
= note: this error originates in the derive macro `EnumSetType` (in Nightly builds, run with -Z macro-backtrace for more info)
error[E0277]: the trait bound `OkayEnumButCantUseFromRepr: EnumSetTypeWithRepr` is not satisfied
--> tests/compile-fail/variants.rs:64:5
|
64 | EnumSet::<OkayEnumButCantUseFromRepr>::from_repr(1);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `EnumSetTypeWithRepr` is not implemented for `OkayEnumButCantUseFromRepr`
|
note: required by a bound in `enumset::EnumSet::<T>::from_repr`
--> src/lib.rs
|
| where T: EnumSetTypeWithRepr {
| ^^^^^^^^^^^^^^^^^^^ required by this bound in `enumset::EnumSet::<T>::from_repr`
error[E0277]: the trait bound `OkayEnumButCantUseFromRepr: EnumSetTypeWithRepr` is not satisfied
--> tests/compile-fail/variants.rs:64:5
|
64 | EnumSet::<OkayEnumButCantUseFromRepr>::from_repr(1);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `EnumSetTypeWithRepr` is not implemented for `OkayEnumButCantUseFromRepr`
error[E0277]: the trait bound `OkayEnumButCantUseFromRepr: EnumSetTypeWithRepr` is not satisfied
--> tests/compile-fail/variants.rs:64:54
|
64 | EnumSet::<OkayEnumButCantUseFromRepr>::from_repr(1);
| ^ the trait `EnumSetTypeWithRepr` is not implemented for `OkayEnumButCantUseFromRepr`
|