| 1234567891011121314151617181920212223242526272829303132333435363738394041 |
- from __future__ import annotations
- from collections.abc import Iterable
- from typing import Any
- from wandb.sdk.wandb_settings import Settings
- class SettingsStatic(Settings):
- """A readonly object that wraps a protobuf Settings message.
- Implements the mapping protocol, so you can access settings as
- attributes or items.
- """
- def __init__(self, data: dict[str, Any]) -> None:
- super().__init__(**data)
- def __setattr__(self, name: str, value: object) -> None:
- raise AttributeError("Error: SettingsStatic is a readonly object")
- def __setitem__(self, key: str, val: object) -> None:
- raise AttributeError("Error: SettingsStatic is a readonly object")
- def keys(self) -> Iterable[str]:
- return self.__dict__.keys()
- def __getitem__(self, key: str) -> Any:
- return self.__dict__[key]
- def __getattr__(self, name: str) -> Any:
- try:
- return self.__dict__[name]
- except KeyError:
- raise AttributeError(f"SettingsStatic has no attribute {name}")
- def __str__(self) -> str:
- return str(self.__dict__)
- def __contains__(self, key: str) -> bool:
- return key in self.__dict__
|