File tree Expand file tree Collapse file tree 1 file changed +8
-6
lines changed Expand file tree Collapse file tree 1 file changed +8
-6
lines changed Original file line number Diff line number Diff line change @@ -83,13 +83,15 @@ class ENUM:
83
83
"""
84
84
85
85
def __init__ (self , * candidates : str | bool | None ) -> None :
86
- self .candidates = candidates
86
+ self ._candidates = frozenset (candidates )
87
+
88
+ def __repr__ (self ) -> str :
89
+ return f'ENUM({ ", " .join (sorted (map (repr , self ._candidates )))} )'
87
90
88
91
def match (self , value : str | list | tuple ) -> bool :
89
- if isinstance (value , list | tuple ):
90
- return all (item in self .candidates for item in value )
91
- else :
92
- return value in self .candidates
92
+ if isinstance (value , frozenset | list | set | tuple ):
93
+ return all (item in self ._candidates for item in value )
94
+ return value in self ._candidates
93
95
94
96
95
97
_OptValidTypes : TypeAlias = tuple [()] | tuple [type , ...] | frozenset [type ] | ENUM
@@ -803,7 +805,7 @@ def check_confval_types(app: Sphinx | None, config: Config) -> None:
803
805
)
804
806
logger .warning (
805
807
msg .format (
806
- name = name , current = value , candidates = valid_types .candidates
808
+ name = name , current = value , candidates = valid_types ._candidates
807
809
),
808
810
once = True ,
809
811
)
You can’t perform that action at this time.
0 commit comments