mirror of
https://github.com/Andre0512/pyhOn.git
synced 2025-05-16 16:14:28 -04:00
Add more type hints
This commit is contained in:
parent
ad0d065b03
commit
9eb99f283b
30 changed files with 392 additions and 243 deletions
|
@ -12,7 +12,9 @@ class HonParameter:
|
|||
self._mandatory: int = attributes.get("mandatory", 0)
|
||||
self._value: str | float = ""
|
||||
self._group: str = group
|
||||
self._triggers: Dict[str, List[Tuple[Callable, "HonRule"]]] = {}
|
||||
self._triggers: Dict[
|
||||
str, List[Tuple[Callable[["HonRule"], None], "HonRule"]]
|
||||
] = {}
|
||||
|
||||
@property
|
||||
def key(self) -> str:
|
||||
|
@ -51,20 +53,22 @@ class HonParameter:
|
|||
def group(self) -> str:
|
||||
return self._group
|
||||
|
||||
def add_trigger(self, value, func, data):
|
||||
def add_trigger(
|
||||
self, value: str, func: Callable[["HonRule"], None], data: "HonRule"
|
||||
) -> None:
|
||||
if self._value == value:
|
||||
func(data)
|
||||
self._triggers.setdefault(value, []).append((func, data))
|
||||
|
||||
def check_trigger(self, value) -> None:
|
||||
def check_trigger(self, value: str | float) -> None:
|
||||
if str(value) in self._triggers:
|
||||
for trigger in self._triggers[str(value)]:
|
||||
func, args = trigger
|
||||
func(args)
|
||||
|
||||
@property
|
||||
def triggers(self):
|
||||
result = {}
|
||||
def triggers(self) -> Dict[str, Any]:
|
||||
result: Dict[str, Any] = {}
|
||||
for value, rules in self._triggers.items():
|
||||
for _, rule in rules:
|
||||
if rule.extras:
|
||||
|
|
|
@ -3,7 +3,7 @@ from typing import Dict, Any, List
|
|||
from pyhon.parameter.base import HonParameter
|
||||
|
||||
|
||||
def clean_value(value):
|
||||
def clean_value(value: str | float) -> str:
|
||||
return str(value).strip("[]").replace("|", "_").lower()
|
||||
|
||||
|
||||
|
@ -24,7 +24,7 @@ class HonParameterEnum(HonParameter):
|
|||
return [clean_value(value) for value in self._values]
|
||||
|
||||
@values.setter
|
||||
def values(self, values) -> None:
|
||||
def values(self, values: List[str]) -> None:
|
||||
self._values = values
|
||||
|
||||
@property
|
||||
|
|
|
@ -36,7 +36,7 @@ class HonParameterProgram(HonParameterEnum):
|
|||
return sorted(values)
|
||||
|
||||
@values.setter
|
||||
def values(self, values) -> None:
|
||||
def values(self, values: List[str]) -> None:
|
||||
return
|
||||
|
||||
@property
|
||||
|
@ -50,5 +50,5 @@ class HonParameterProgram(HonParameterEnum):
|
|||
}
|
||||
return dict(sorted(values.items()))
|
||||
|
||||
def set_value(self, value: str):
|
||||
def set_value(self, value: str) -> None:
|
||||
self._value = value
|
||||
|
|
|
@ -13,7 +13,7 @@ class HonParameterRange(HonParameter):
|
|||
self._default: float = str_to_float(attributes.get("defaultValue", self.min))
|
||||
self._value: float = self._default
|
||||
|
||||
def __repr__(self):
|
||||
def __repr__(self) -> str:
|
||||
return f"{self.__class__} (<{self.key}> [{self.min} - {self.max}])"
|
||||
|
||||
@property
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue