Source code for ibek.support

"""
Support Class to represent a deserialized <MODULE_NAME>.ibek.support.yaml file.
"""

from __future__ import annotations

import json
from typing import Sequence

from pydantic import Field

from .definition import EntityDefinition
from .globals import BaseSettings


[docs] class Support(BaseSettings): """ Lists the definitions for a support module, this defines what Entities it supports Provides the deserialize entry point. """ module: str = Field(description="Support module name, normally the repo name") defs: Sequence[EntityDefinition] = Field( description="The definitions an IOC can create using this module" ) @classmethod def get_schema(cls): return json.dumps(cls.model_json_schema(), indent=2)