Ideas for built-in types.
dangle opened this issue · 3 comments
dangle commented
typet
needs to supply a rich collection of types by default. This issue will track ideas for the initial types.
dangle commented
Create a SingletonObject
by creating a private metaclass that inherits from Singleton
and _ObjectMeta
and a metaclass for a StrictSingletonObject
that inherits from Singleton
and _StrictObjectMeta
.
The proposed use case would be a global settings object:
from typet import SingletonObject, File
class _Configuration(SingletonObject):
config: File = '~/.my_config'
settings = _Configuration()
dangle commented
- JsonFile
** Validates a file's existence and that it can be parsed as JSON.
** Instances are dicts.
** Sliceable to indicate the type of dict returned.
** JsonFile implies JsonFile[dict] by default.
** JsonFile[OrderedDict] -
- JsonFile[DefaultDict[Any, Any])
** Ifyaml
is installed (optional in setup.py), parse YAML files?
- JsonFile[DefaultDict[Any, Any])
dangle commented
"Registerable" metaclass that registers subclassess automatically.