aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/project/toolset.py
diff options
context:
space:
mode:
authorEgor Tensin <egor@tensin.name>2026-10-09 16:49:25 +0500
committerEgor Tensin <egor@tensin.name>2026-10-09 16:58:00 +0500
commit21a16d5f91429cf2a61dcdae45c5448c096123d7 (patch)
tree8052fd16287a06c4d0fd564cb62cf44de0b60d76 /project/toolset.py
parentugprade to StrEnum (diff)
downloadcmake-common-21a16d5f91429cf2a61dcdae45c5448c096123d7.tar.gz
cmake-common-21a16d5f91429cf2a61dcdae45c5448c096123d7.zip
use the match statement
Diffstat (limited to 'project/toolset.py')
-rw-r--r--project/toolset.py32
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():