INNER CODE UNIT · Python

_require_type

trinodb/trino · .github/bin/build-matrix-schedule-aware.py:317

def _require_type(obj: Any, t: type[T], name: str | None = None) -> T:
    if not isinstance(obj, t):
        raise ValueError(
            f"{name} should be a {t.__name__}, was {obj}"
            if name
            else f"unexpected value {obj}, expecting a {t.__name__}"
        )
    return obj


def _expect_str_list(d: dict[str, Any], key: str) -> list[str]:
    values = _require_type(d.get(key, []), list, key)
    return [_require_type(value, str) for value in values]


def _expect_str_lists(d: dict[str, Any], key: str) -> list[list[str]]:
    """
    Parses a schedule config's "modules" field into a list of module sets (one matrix job each).

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…