Skip to content

Commit d0f3958

Browse files
committed
Add extension version property
1 parent 1b09466 commit d0f3958

File tree

3 files changed

+11
-2
lines changed

3 files changed

+11
-2
lines changed

tket-exts/src/tket_exts/tket/_util.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
from typing import List, Protocol
55

66
from hugr.ext import Extension, OpDef, TypeDef
7+
from semver import Version
78

89

910
def load_extension(name: str) -> Extension:
@@ -16,6 +17,13 @@ def load_extension(name: str) -> Extension:
1617

1718

1819
class TketExtension(Protocol):
20+
"""A protocol for tket extensions."""
21+
1922
def TYPES(self) -> List[TypeDef]: ...
2023
def OPS(self) -> List[OpDef]: ...
2124
def __call__(self) -> Extension: ...
25+
26+
@property
27+
def version(self) -> Version:
28+
"""The version of the extension"""
29+
return self().version

tket-exts/tests/test_validate_exts.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -197,6 +197,7 @@ def test_exported_extension(
197197
(ext, instantiated_types, instantiated_ops) = ext_vals()
198198

199199
e = ext()
200+
assert e.version == ext.version
200201

201202
types = ext.TYPES()
202203
assert len(types) == len(e.types)

uv.lock

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)