Let #[pyclass] reject empty enums.
This commit is contained in:
parent
b7419b5278
commit
d339cd0dc9
|
@ -386,6 +386,9 @@ pub fn build_py_enum(
|
|||
args: PyClassArgs,
|
||||
method_type: PyClassMethodsType,
|
||||
) -> syn::Result<TokenStream> {
|
||||
if enum_.variants.is_empty() {
|
||||
bail_spanned!(enum_.brace_token.span => "Empty enums can't be #[pyclass].");
|
||||
}
|
||||
let variants: Vec<PyClassEnumVariant> = enum_
|
||||
.variants
|
||||
.iter()
|
||||
|
|
|
@ -12,4 +12,7 @@ enum NotDrivedClass {
|
|||
y,
|
||||
}
|
||||
|
||||
#[pyclass]
|
||||
enum NoEmptyEnum {}
|
||||
|
||||
fn main() {}
|
||||
|
|
|
@ -9,3 +9,9 @@ error: enums cannot extend from other classes
|
|||
|
|
||||
9 | #[pyclass(extends = PyList)]
|
||||
| ^^^^^^^
|
||||
|
||||
error: Empty enums can't be #[pyclass].
|
||||
--> tests/ui/invalid_pyclass_enum.rs:16:18
|
||||
|
|
||||
16 | enum NoEmptyEnum {}
|
||||
| ^^
|
||||
|
|
Loading…
Reference in New Issue