/
githubmirror
/
AgentPilot
Обзор
Документация
Войти
/
githubmirror
/
AgentPilot
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
v0.2.0
src/operations/parameters.py
93 строки
3 KB
jbexta
prep
04 мар 2024, 07:53
04 мар 2024, 07:53
5d8394b
Код
Авторство
О чём код?
# from PIL import Image class FValue: def __init__(self): self.base_value = '' self.accepts = '' self.type_str = 'string'# class TextFValue(FValue): def __init__(self): super().__init__() self.accepts = 'a text value' self.type_str = 'string' def set(self, value): if isinstance(value, str): self.base_value = value else: raise TypeError(f"TextFType cannot be set with {type(value)}") class BoolFValue(FValue): def __init__(self): super().__init__() self.accepts = 'a boolean value' self.examples = [] self.type_str = 'boolean' def set(self, value): if isinstance(value, str): value = value.lower() self.base_value = True if value == 'true' or value == '1' or value == 'yes' or value == 'y' else None self.base_value = False if value == 'false' or value == '0' or value == 'no' or value == 'n' else self.base_value elif isinstance(value, bool): self.base_value = value else: raise TypeError(f"TextFType cannot be set with {type(value)}") # def get(self, return_type='STRING'): # if return_type == 'STRING': # return self.base_value # else: # raise NotImplementedError class FileFValue(FValue): def __init__(self): super().__init__() self.accepts = 'a path of a file' self.examples = [] self.type_str = 'string' def set(self, value): if isinstance(value, str): # path of the image self.base_value = value # elif isinstance(value, Image.Image): # # save image to file and set value to the path # raise NotImplementedError else: raise TypeError(f"ImageFType cannot be set with {type(value)}") class ImageFValue(FileFValue): def __init__(self): super().__init__() self.accepts = 'a path of an image' self.type_str = 'string' def set(self, value): if isinstance(value, str): self.base_value = value # elif isinstance(value, Image.Image): # # save image to file and set value to the path # raise NotImplementedError else: raise TypeError(f"ImageFType cannot be set with {type(value)}") def get(self, return_type='PATH'): if return_type == 'PATH': return self.base_value else: raise NotImplementedError class TimeBasedFType(FValue): def __init__(self): super().__init__() self.accepts = 'an expression of time represented as text' self.type_str = 'string'