# -*- coding: utf-8 -*- from __future__ import annotations from typing import Iterable, TYPE_CHECKING import abc from ..Package import Package from .Backend import Backend as Base if TYPE_CHECKING: from ..Cmd import Cmd as Parent class BePkg(Base): def __init__(self, parent: Parent): super().__init__(parent) async def files(self, name: str) -> Iterable[str]: return await self._files(name) @abc.abstractmethod async def _files(self, name: str) -> Iterable[str]: pass async def meta_data(self, names: Iterable[str]) -> Iterable[Package]: return await self._meta_data(names) @abc.abstractmethod async def _meta_data(self, names: Iterable[str]) -> Iterable[Package]: pass