diff options
| author | Xavier Claessens <xclaessens@netflix.com> | 2025-10-16 17:58:11 -0400 |
|---|---|---|
| committer | Xavier Claessens <xclaesse@gmail.com> | 2025-10-17 16:15:14 -0400 |
| commit | 624ddc9001c2c53109dbc67e9292fa467998b0d0 (patch) | |
| tree | c22ae729bf597d84dd5136da9659b027fa8059d0 | |
| parent | d6eca52d79f01a9ebe06c78c8577cb65311da043 (diff) | |
| download | meson-624ddc9001c2c53109dbc67e9292fa467998b0d0.tar.gz | |
cargo: Move _depv_to_dep() inside Dependency class
That's better namespacing as it's the only user.
| -rw-r--r-- | mesonbuild/cargo/manifest.py | 26 |
1 files changed, 14 insertions, 12 deletions
diff --git a/mesonbuild/cargo/manifest.py b/mesonbuild/cargo/manifest.py index 9dadcd8a7..faf4dcfd5 100644 --- a/mesonbuild/cargo/manifest.py +++ b/mesonbuild/cargo/manifest.py @@ -46,16 +46,6 @@ def fixup_meson_varname(name: str) -> str: return name.replace('-', '_') -@T.overload -def _depv_to_dep(depv: raw.FromWorkspace) -> raw.FromWorkspace: ... - -@T.overload -def _depv_to_dep(depv: raw.DependencyV) -> raw.Dependency: ... - -def _depv_to_dep(depv: T.Union[raw.FromWorkspace, raw.DependencyV]) -> T.Union[raw.FromWorkspace, raw.Dependency]: - return {'version': depv} if isinstance(depv, str) else depv - - def _raw_to_dataclass(raw: T.Mapping[str, object], cls: T.Type[_DI], msg: str, **kwargs: T.Callable[[T.Any], object]) -> _DI: """Fixup raw cargo mappings to ones more suitable for python to consume as dataclass. @@ -261,6 +251,18 @@ class Dependency: else: raise MesonException(f'Cannot determine minimum API version from {self.version}.') + @T.overload + @staticmethod + def _depv_to_dep(depv: raw.FromWorkspace) -> raw.FromWorkspace: ... + + @T.overload + @staticmethod + def _depv_to_dep(depv: raw.DependencyV) -> raw.Dependency: ... + + @staticmethod + def _depv_to_dep(depv: T.Union[raw.FromWorkspace, raw.DependencyV]) -> T.Union[raw.FromWorkspace, raw.Dependency]: + return {'version': depv} if isinstance(depv, str) else depv + @classmethod def from_raw_dict(cls, name: str, raw_dep: T.Union[raw.FromWorkspace, raw.Dependency], member_path: str = '', raw_ws_dep: T.Optional[raw.Dependency] = None) -> Dependency: raw_dep = _inherit_from_workspace(raw_dep, raw_ws_dep, @@ -276,9 +278,9 @@ class Dependency: raw_ws_dep: T.Optional[raw.Dependency] = None if workspace is not None: raw_ws_depv = workspace.dependencies.get(name, {}) - raw_ws_dep = _depv_to_dep(raw_ws_depv) + raw_ws_dep = cls._depv_to_dep(raw_ws_depv) - raw_dep = _depv_to_dep(raw_depv) + raw_dep = cls._depv_to_dep(raw_depv) return cls.from_raw_dict(name, raw_dep, member_path, raw_ws_dep) def update_version(self, v: str) -> None: |
