diff options
| author | Egor Tensin <egor@tensin.name> | 2026-10-09 16:49:25 +0500 |
|---|---|---|
| committer | Egor Tensin <egor@tensin.name> | 2026-10-09 16:58:00 +0500 |
| commit | 21a16d5f91429cf2a61dcdae45c5448c096123d7 (patch) | |
| tree | 8052fd16287a06c4d0fd564cb62cf44de0b60d76 /project/toolset.py | |
| parent | ugprade to StrEnum (diff) | |
| download | cmake-common-21a16d5f91429cf2a61dcdae45c5448c096123d7.tar.gz cmake-common-21a16d5f91429cf2a61dcdae45c5448c096123d7.zip | |
use the match statement
Diffstat (limited to 'project/toolset.py')
| -rw-r--r-- | project/toolset.py | 32 |
1 files changed, 19 insertions, 13 deletions
diff --git a/project/toolset.py b/project/toolset.py index f93881f..86137e8 100644 --- a/project/toolset.py +++ b/project/toolset.py @@ -174,23 +174,29 @@ class ToolsetType(StrEnum): @property def is_versioned(self): - if self is ToolsetType.MSVC or self is ToolsetType.VISUAL_STUDIO: - return True - return False + match self: + case ToolsetType.MSVC | ToolsetType.VISUAL_STUDIO: + return True + case _: + return False def parse_version(self, s): - if self is ToolsetType.MSVC: - return MSVCVersion.parse(s) - if self is ToolsetType.VISUAL_STUDIO: - return VisualStudioVersion.parse(s) - raise RuntimeError(f"this toolset doesn't support versions: {self}") + match self: + case ToolsetType.MSVC: + return MSVCVersion.parse(s) + case ToolsetType.VISUAL_STUDIO: + return VisualStudioVersion.parse(s) + case _: + raise RuntimeError(f"this toolset doesn't support versions: {self}") def all_versions(self): - if self is ToolsetType.MSVC: - return MSVCVersion.all() - if self is ToolsetType.VISUAL_STUDIO: - return VisualStudioVersion.all() - raise RuntimeError(f"this toolset doesn't support versions: {self}") + match self: + case ToolsetType.MSVC: + return MSVCVersion.all() + case ToolsetType.VISUAL_STUDIO: + return VisualStudioVersion.all() + case _: + raise RuntimeError(f"this toolset doesn't support versions: {self}") @staticmethod def all(): |
