(root)/
Python-3.12.0/
Lib/
importlib/
metadata/
_meta.py
       1  from typing import Protocol
       2  from typing import Any, Dict, Iterator, List, Optional, TypeVar, Union, overload
       3  
       4  
       5  _T = TypeVar("_T")
       6  
       7  
       8  class ESC[4;38;5;81mPackageMetadata(ESC[4;38;5;149mProtocol):
       9      def __len__(self) -> int:
      10          ...  # pragma: no cover
      11  
      12      def __contains__(self, item: str) -> bool:
      13          ...  # pragma: no cover
      14  
      15      def __getitem__(self, key: str) -> str:
      16          ...  # pragma: no cover
      17  
      18      def __iter__(self) -> Iterator[str]:
      19          ...  # pragma: no cover
      20  
      21      @overload
      22      def get(self, name: str, failobj: None = None) -> Optional[str]:
      23          ...  # pragma: no cover
      24  
      25      @overload
      26      def get(self, name: str, failobj: _T) -> Union[str, _T]:
      27          ...  # pragma: no cover
      28  
      29      # overload per python/importlib_metadata#435
      30      @overload
      31      def get_all(self, name: str, failobj: None = None) -> Optional[List[Any]]:
      32          ...  # pragma: no cover
      33  
      34      @overload
      35      def get_all(self, name: str, failobj: _T) -> Union[List[Any], _T]:
      36          """
      37          Return all values associated with a possibly multi-valued key.
      38          """
      39  
      40      @property
      41      def json(self) -> Dict[str, Union[str, List[str]]]:
      42          """
      43          A JSON-compatible form of the metadata.
      44          """
      45  
      46  
      47  class ESC[4;38;5;81mSimplePath(ESC[4;38;5;149mProtocol[_T]):
      48      """
      49      A minimal subset of pathlib.Path required by PathDistribution.
      50      """
      51  
      52      def joinpath(self) -> _T:
      53          ...  # pragma: no cover
      54  
      55      def __truediv__(self, other: Union[str, _T]) -> _T:
      56          ...  # pragma: no cover
      57  
      58      @property
      59      def parent(self) -> _T:
      60          ...  # pragma: no cover
      61  
      62      def read_text(self) -> str:
      63          ...  # pragma: no cover