1- from io import TextIOBase
21import os
32import pathlib
43from typing import Any
54from dataclasses import field , dataclass
65
76from kirin import ir , types , lowering
8- from kirin .dialects import cf , func , ilist , py
7+ from kirin .dialects import cf , py , func , ilist
98
109from bloqade .qasm2 .types import CRegType , QRegType
1110from bloqade .qasm2 .dialects import uop , core , expr , glob , noise , parallel
@@ -111,10 +110,10 @@ def loads(
111110 dialects = self .dialects ,
112111 code = code ,
113112 )
114-
113+
115114 def loadfile (
116115 self ,
117- file : str | pathlib .Path ,
116+ file : str | pathlib .Path ,
118117 * ,
119118 kernel_name : str | None = None ,
120119 returns : list [str ] | None = None ,
@@ -125,15 +124,17 @@ def loadfile(
125124 ) -> ir .Method :
126125 if isinstance (file , str ):
127126 file = pathlib .Path (* os .path .split (file ))
128-
127+
129128 if not file .is_file () or not file .name .endswith (".qasm" ):
130129 raise ValueError ("File must be a .qasm file" )
131-
132- kernel_name = file .name .replace (".qasm" , "" ) if kernel_name is None else kernel_name
133-
130+
131+ kernel_name = (
132+ file .name .replace (".qasm" , "" ) if kernel_name is None else kernel_name
133+ )
134+
134135 with file .open ("r" ) as f :
135136 source = f .read ()
136-
137+
137138 return self .loads (
138139 source ,
139140 kernel_name ,
0 commit comments