Skip to content

Commit 65f94e7

Browse files
committed
simplify gate function
1 parent 7523980 commit 65f94e7

File tree

1 file changed

+2
-20
lines changed

1 file changed

+2
-20
lines changed

src/bloqade/qasm2/dialects/expr/stmts.py

Lines changed: 2 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,16 @@
11
from kirin import ir, types, lowering
22
from kirin.decl import info, statement
3+
from kirin.dialects import func
34
from kirin.print.printer import Printer
4-
from kirin.dialects.func.attrs import Signature
55

66
from ._dialect import dialect
77

88

9-
class GateFuncOpCallableInterface(ir.CallableStmtInterface["GateFunction"]):
10-
11-
@classmethod
12-
def get_callable_region(cls, stmt: "GateFunction") -> ir.Region:
13-
return stmt.body
14-
15-
169
@statement(dialect=dialect)
17-
class GateFunction(ir.Statement):
10+
class GateFunction(func.Function):
1811
"""Special Function for qasm2 gate subroutine."""
1912

2013
name = "gate.func"
21-
traits = frozenset(
22-
{
23-
ir.IsolatedFromAbove(),
24-
ir.SymbolOpInterface(),
25-
ir.HasSignature(),
26-
GateFuncOpCallableInterface(),
27-
}
28-
)
29-
sym_name: str = info.attribute()
30-
signature: Signature = info.attribute()
31-
body: ir.Region = info.region(multi=True)
3214

3315
def print_impl(self, printer: Printer) -> None:
3416
with printer.rich(style="red"):

0 commit comments

Comments
 (0)