Source code for pinefarm.info

"""Provide inspection tools."""

import dataclasses
import typing

from .external import decide_external_tool
from .external.interface import External


[docs] @dataclasses.dataclass class Info: """Info type.""" color: str external: typing.Type[External] @property def kind(self): """Type of process as defined by the external interface.""" return self.external.kind
[docs] def label(dataset: str) -> Info: """Generate associated Info type.""" ext_tool, color = decide_external_tool(dataset) return Info(color=color, external=ext_tool)