nsqdriver 0.11.0__cp310-cp310-win_amd64.whl → 0.12.1__cp310-cp310-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of nsqdriver might be problematic. Click here for more details.

nsqdriver/__init__.py CHANGED
@@ -4,7 +4,7 @@ from .NS_CST import Driver as CSTDriver
4
4
  from .compiler.ns_wave import InsChannel
5
5
  from .compiler.py_wave_asm import nsw_config, AssemblyError
6
6
 
7
- version_pack = (0, 11, 0)
7
+ version_pack = (0, 12, 1)
8
8
 
9
9
  __version__ = '.'.join(str(_) for _ in version_pack)
10
10
  __all__ = ['MCIDriver', 'QSYNCDriver', 'CSTDriver', 'InsChannel']
@@ -1,3 +1,9 @@
1
1
  from .kernel import *
2
2
  from ._functions import *
3
- from ._ir_pass import ir_pass as ir_pass
3
+ from ._ir_pass import ir_pass as ir_pass
4
+ import nsqdriver.nswave._rules as rules
5
+ import nsqdriver.nswave._checkers as checkers
6
+ import nsqdriver.nswave._translate as translator
7
+
8
+
9
+ __all__ = ['Kernel', 'ir_pass', 'rules', 'checkers', 'translator']
nsqdriver/nswave/_asm.pyi CHANGED
@@ -30,7 +30,8 @@ class QInsFrame(NSQCommand):
30
30
  freq: Incomplete
31
31
  phase: Incomplete
32
32
  idx: Incomplete
33
- def __init__(self, freq, phase, idx) -> None: ...
33
+ line: Incomplete
34
+ def __init__(self, freq, phase, idx, line) -> None: ...
34
35
  @property
35
36
  def overhead(self): ...
36
37
 
@@ -0,0 +1,47 @@
1
+ from ._ir import *
2
+ from _typeshed import Incomplete
3
+
4
+ __all__ = ['BaseChecker', 'OverlapChecker', 'EnvelopeChecker', 'TwoCapiChecker', 'SequenceChecker', 'PlyChecker', 'DrstChecker', 'CapiChecker', 'FmsiChecker', 'IRNumberChecker']
5
+
6
+ class BaseChecker:
7
+ warnings_instruction: Incomplete
8
+ error_instruction: Incomplete
9
+ IR_list: Incomplete
10
+ def __init__(self) -> None: ...
11
+ def check_ir(self, IR_list) -> list: ...
12
+
13
+ class OverlapChecker(BaseChecker):
14
+ def __init__(self) -> None: ...
15
+ def check_ir(self, ir_list: list): ...
16
+
17
+ class SequenceChecker(BaseChecker):
18
+ def __init__(self) -> None: ...
19
+ def check_ir(self, ir_list) -> list: ...
20
+
21
+ class EnvelopeChecker(BaseChecker):
22
+ def __init__(self) -> None: ...
23
+ def check_ir(self, ir_list): ...
24
+
25
+ class PlyChecker(BaseChecker):
26
+ def __init__(self) -> None: ...
27
+ def check_ir(self, ir_list): ...
28
+
29
+ class DrstChecker(BaseChecker):
30
+ def __init__(self) -> None: ...
31
+ def check_ir(self, ir_list): ...
32
+
33
+ class CapiChecker(BaseChecker):
34
+ def __init__(self) -> None: ...
35
+ def check_ir(self, ir_list): ...
36
+
37
+ class FmsiChecker(BaseChecker):
38
+ def __init__(self) -> None: ...
39
+ def check_ir(self, ir_list): ...
40
+
41
+ class IRNumberChecker(BaseChecker):
42
+ def __init__(self) -> None: ...
43
+ def check_ir(self, ir_list): ...
44
+
45
+ class TwoCapiChecker(BaseChecker):
46
+ def __init__(self) -> None: ...
47
+ def check_ir(self, ir_list): ...
@@ -0,0 +1,24 @@
1
+ from _typeshed import Incomplete
2
+
3
+ class WaitError(Exception): ...
4
+ class TimingError(Exception): ...
5
+ class PlayError(Exception): ...
6
+ class CaptureError(Exception): ...
7
+
8
+ class MultipleErrorsException(Exception):
9
+ errors: Incomplete
10
+ def __init__(self, errors) -> None: ...
11
+
12
+ class BaseError:
13
+ IR_list: Incomplete
14
+ def __init__(self) -> None: ...
15
+ def query_ir(self, error_list): ...
16
+
17
+ class Errors(BaseError):
18
+ errors: Incomplete
19
+ def __init__(self) -> None: ...
20
+ def quire_ir(self, error_list) -> None: ...
21
+ def check_errors(self) -> None: ...
22
+
23
+ class Warnings(BaseError):
24
+ def inquire_ir(self, warning_list): ...
@@ -1,26 +1,34 @@
1
1
  import numpy as np
2
- from ._asm import NSQCommand, QInsEnvelope, QInsFrame
2
+ from ._ir import IRArbWaveform, IRBase, IREnvelope, IRFrame
3
+ from _typeshed import Incomplete
3
4
  from typing import Iterable, TypeVar
4
5
 
5
- __all__ = ['Frame', 'Envelope', 'Int', 'Var', 'wait_for_trigger', 'ins_envelope', 'ins_frame', 'evlp_gaussian', 'evlp_square', 'evlp_cospulse', 'inc_phase', 'inc_frequency', 'reset_frame', 'play_wave', 'wait', 'capture']
6
+ __all__ = ['Frame', 'Envelope', 'Int', 'Var', 'set_judge', 'Reg', 'ArbWave', 'receive', 'send', 'init_arbwave', 'play_arb', 'wait_for_trigger', 'ins_envelope', 'init_frame', 'evlp_gaussian', 'evlp_square', 'evlp_cospulse', 'inc_phase', 'inc_frequency', 'reset_frame', 'play_wave', 'wait', 'capture']
6
7
 
7
- Frame = TypeVar('Frame', bound=QInsFrame)
8
- Envelope = TypeVar('Envelope', bound=QInsEnvelope)
9
- Placeholder = TypeVar('Placeholder', bound=NSQCommand)
8
+ Frame = TypeVar('Frame', bound=IRFrame)
9
+ Reg = TypeVar('Reg')
10
+ Envelope = TypeVar('Envelope', bound=IREnvelope)
11
+ ArbWave = TypeVar('ArbWave', bound=IRArbWaveform)
12
+ Placeholder = TypeVar('Placeholder', bound=IRBase)
10
13
  Var = TypeVar('Var')
11
14
  Int = TypeVar('Int')
12
15
  Uint = TypeVar('Uint')
13
16
  Float = TypeVar('Float')
14
17
 
15
- def ins_frame(freq: float, phase: float, *, idx: int = None) -> QInsFrame: ...
16
- def ins_envelope(envelope: np.ndarray) -> QInsEnvelope: ...
17
- def evlp_gaussian(width: float, srate: float = 8000000000.0) -> QInsEnvelope: ...
18
- def evlp_cospulse(width: float, srate: float = 8000000000.0) -> QInsEnvelope: ...
19
- def evlp_square(width: float, srate: float = 8000000000.0) -> QInsEnvelope: ...
20
- def reset_frame(frame_list: Iterable[Frame] = ...) -> Placeholder: ...
18
+ def init_frame(freq: float, phase: float, *, idx: int = None) -> IRFrame: ...
19
+ def ins_envelope(envelope: np.ndarray | complex) -> IREnvelope: ...
20
+ def init_arbwave(wlist: dict[str, np.ndarray], arb_name: str) -> IRArbWaveform: ...
21
+ def evlp_gaussian(width: float, srate: float = 8000000000.0, amp: int = 1) -> IREnvelope: ...
22
+ def evlp_cospulse(width: float, srate: float = 8000000000.0, amp: int = 1) -> IREnvelope: ...
23
+ def evlp_square(width: float, srate: float = 8000000000.0, amp: int = 1) -> IREnvelope: ...
24
+ def reset_frame() -> Placeholder: ...
21
25
  def wait_for_trigger() -> Placeholder: ...
22
- def inc_phase(frame_list: Iterable[Frame], phase: float) -> Placeholder: ...
26
+ def inc_phase(phase: float) -> Placeholder: ...
23
27
  def inc_frequency(frame_list: Iterable[Frame], freq: float) -> Placeholder: ...
24
- def play_wave(envelope: QInsEnvelope, frame: QInsFrame, amp: int = 1, freq: int = 0, phase: int = 0) -> Placeholder: ...
28
+ def play_wave(envelope: IREnvelope, amp: int = 1, freq: int = 0, phase: int = 0) -> Placeholder: ...
29
+ def play_arb(wave: IRArbWaveform): ...
25
30
  def wait(width) -> Placeholder: ...
26
- def capture(freq_list, acq_width: float, delay_width: float, play_width: float, raw_data_store: bool, iq_data_store: bool, judge_data_store: bool, double_fre_mode: bool) -> Int: ...
31
+ def capture(acq_width: float, delay_width: float, play_width: float, freq_list: Incomplete | None = None) -> Int: ...
32
+ def set_judge(rotation: complex, threshold: int, freq_list: list = None) -> tuple[IRBase, IRBase]: ...
33
+ def send(judge_reg) -> IRBase: ...
34
+ def receive(feedback_rd_chnl: int = 0) -> IRBase: ...
Binary file
@@ -0,0 +1,283 @@
1
+ import abc
2
+ import numpy as np
3
+ from _typeshed import Incomplete
4
+
5
+ __all__ = ['AssemblyError', 'GenTagMixin', 'IRBase', 'PreIR', 'nsw_config', 'UnfixIR', 'IRFrameRst', 'IRWaitTrig', 'FixIR', 'OverlapIR', 'ReconstitutionIR', 'IRFrame', 'IREnvelope', 'IRNop', 'IRDelay', 'IRProt', 'IRPth', 'IRMov', 'IRJmov', 'IRNsw', 'IRNlw', 'IRPlaceholder', 'IRWaitTrig', 'IRJumpImmediate', 'IRPlayImm', 'IRCapture', 'IRWait', 'IRFrameAdd', 'IRAdd', 'IRPlayDDRImm', 'IRArbWaveform', 'LoadDDRIR', 'IRWaitDDR']
6
+
7
+ def nsw_config(name, value) -> None: ...
8
+
9
+ class AssemblyError(RuntimeError): ...
10
+
11
+ class GenTagMixin:
12
+ @property
13
+ def generate_tag(self): ...
14
+
15
+ class IRBase(GenTagMixin, abc.ABC, metaclass=abc.ABCMeta):
16
+ tag: Incomplete
17
+ real_wait_time: int
18
+ line: int
19
+ index_map: Incomplete
20
+ def __init__(self) -> None: ...
21
+ @property
22
+ @abc.abstractmethod
23
+ def overhead(self): ...
24
+ @property
25
+ @abc.abstractmethod
26
+ def wait_time(self): ...
27
+
28
+ class PreIR(IRBase):
29
+ def __init__(self) -> None: ...
30
+ @property
31
+ def overhead(self): ...
32
+ @property
33
+ def wait_time(self, *args): ...
34
+
35
+ class UnfixIR(IRBase):
36
+ ir_sub: Incomplete
37
+ irhead: int
38
+ def __init__(self) -> None: ...
39
+ @property
40
+ def overhead(self): ...
41
+ @property
42
+ def wait_time(self, *args): ...
43
+ def fetch_ir(self, ir) -> None: ...
44
+
45
+ class FixIR(IRBase):
46
+ def __init__(self) -> None: ...
47
+ @property
48
+ def overhead(self): ...
49
+ @property
50
+ def wait_time(self, *args): ...
51
+
52
+ class LoadDDRIR(IRBase):
53
+ wait_trig: bool
54
+ def __init__(self) -> None: ...
55
+ @property
56
+ def overhead(self): ...
57
+ @property
58
+ def wait_time(self): ...
59
+
60
+ class OverlapIR(IRBase):
61
+ def __init__(self) -> None: ...
62
+ @property
63
+ def overhead(self): ...
64
+ @property
65
+ def wait_time(self, *args): ...
66
+
67
+ class ReconstitutionIR(IRBase):
68
+ def __init__(self) -> None: ...
69
+ @property
70
+ def overhead(self): ...
71
+ @property
72
+ def wait_time(self, *args): ...
73
+
74
+ class IRFrame(PreIR):
75
+ freq: Incomplete
76
+ phase: Incomplete
77
+ idx: Incomplete
78
+ real_wait_time: int
79
+ def __init__(self, freq, phase, idx) -> None: ...
80
+ @property
81
+ def overhead(self): ...
82
+ @property
83
+ def wait_time(self, *args): ...
84
+
85
+ class IRArbWaveform(PreIR):
86
+ waveform: Incomplete
87
+ wave_type: Incomplete
88
+ offset: int
89
+ step: Incomplete
90
+ def __init__(self, waveform: np.ndarray) -> None: ...
91
+
92
+ class IREnvelope(PreIR):
93
+ envelop_slice: Incomplete
94
+ def __init__(self, envelope: np.ndarray | complex, amp: int = 1) -> None: ...
95
+ def __len__(self) -> int: ...
96
+ def __bytes__(self) -> bytes: ...
97
+
98
+ class IRNop(PreIR):
99
+ @property
100
+ def overhead(self): ...
101
+ @property
102
+ def wait_time(self): ...
103
+
104
+ class IRProt(PreIR):
105
+ fre: Incomplete
106
+ rotation_real: Incomplete
107
+ rotation_imag: Incomplete
108
+ real_wait_time: int
109
+ def __init__(self, freq_list, rotation) -> None: ...
110
+ @property
111
+ def overhead(self): ...
112
+ @property
113
+ def wait_time(self, *args): ...
114
+
115
+ class IRPth(PreIR):
116
+ fre: Incomplete
117
+ threshold: Incomplete
118
+ real_wait_time: int
119
+ def __init__(self, freq_list, threshold) -> None: ...
120
+ @property
121
+ def overhead(self): ...
122
+ @property
123
+ def wait_time(self, *args): ...
124
+
125
+ class IRWaitTrig(UnfixIR):
126
+ irhead: int
127
+ def __init__(self) -> None: ...
128
+ @property
129
+ def overhead(self): ...
130
+ @property
131
+ def wait_time(self): ...
132
+ @wait_time.setter
133
+ def wait_time(self, value) -> None: ...
134
+
135
+ class IRJumpImmediate(UnfixIR):
136
+ idx: Incomplete
137
+ def __init__(self, idx: int) -> None: ...
138
+ @property
139
+ def overhead(self): ...
140
+ @property
141
+ def wait_time(self): ...
142
+
143
+ class IRPlaceholder(UnfixIR):
144
+ irhead: int
145
+ def __init__(self) -> None: ...
146
+ @property
147
+ def overhead(self): ...
148
+ @property
149
+ def wait_time(self): ...
150
+
151
+ class IRJumpConditional(UnfixIR):
152
+ idx: Incomplete
153
+ result: Incomplete
154
+ irhead: int
155
+ jumpaddr: Incomplete
156
+ feedback_chnl: Incomplete
157
+ def __init__(self, register_idx, judge_result, feedback_chnl, jumpaddr: int = 0) -> None: ...
158
+ @property
159
+ def overhead(self): ...
160
+ @property
161
+ def wait_time(self): ...
162
+
163
+ class IRJumpInside(OverlapIR):
164
+ irhead: int
165
+ jumpaddr: int
166
+ def __init__(self) -> None: ...
167
+ @property
168
+ def overhead(self): ...
169
+ @property
170
+ def wait_time(self): ...
171
+
172
+ class IRPlayDDRImm(FixIR, LoadDDRIR):
173
+ wave: Incomplete
174
+ wait_trig: bool
175
+ def __init__(self, wave: IRArbWaveform) -> None: ...
176
+ @property
177
+ def overhead(self): ...
178
+ @property
179
+ def wait_time(self): ...
180
+
181
+ class IRPlayImm(FixIR):
182
+ frame: Incomplete
183
+ freq: Incomplete
184
+ amp: Incomplete
185
+ bias: Incomplete
186
+ envelope: Incomplete
187
+ phase: Incomplete
188
+ def __init__(self, frame, envelope: IREnvelope, amp, bias, freq, phase) -> None: ...
189
+ @property
190
+ def overhead(self): ...
191
+ @property
192
+ def wait_time(self): ...
193
+
194
+ class IRCapture(FixIR):
195
+ fre: Incomplete
196
+ acq_width: Incomplete
197
+ delay_width: Incomplete
198
+ play_width: Incomplete
199
+ para: Incomplete
200
+ def __init__(self, freq_list: list, acq_width: float, delay_width: float, play_width: float, raw_data_store: bool = True, iq_data_store: bool = True, judge_data_store: bool = True, double_fre_mode: bool = False) -> None: ...
201
+ @property
202
+ def overhead(self): ...
203
+ @property
204
+ def wait_time(self): ...
205
+
206
+ class IRWait(FixIR):
207
+ width: Incomplete
208
+ def __init__(self, width) -> None: ...
209
+ @property
210
+ def overhead(self): ...
211
+ @property
212
+ def wait_time(self): ...
213
+
214
+ class IRDelay(FixIR):
215
+ width: Incomplete
216
+ def __init__(self, width) -> None: ...
217
+ @property
218
+ def overhead(self): ...
219
+ @property
220
+ def wait_time(self): ...
221
+
222
+ class IRFrameAdd(OverlapIR):
223
+ frames: Incomplete
224
+ frequency: Incomplete
225
+ phase: Incomplete
226
+ def __init__(self, frames: list, frequency: float, phase: float) -> None: ...
227
+ @property
228
+ def overhead(self): ...
229
+ @property
230
+ def wait_time(self): ...
231
+
232
+ class IRFrameRst(OverlapIR):
233
+ @property
234
+ def overhead(self): ...
235
+ @property
236
+ def wait_time(self): ...
237
+
238
+ class IRAdd(ReconstitutionIR):
239
+ @property
240
+ def overhead(self): ...
241
+ @property
242
+ def wait_time(self): ...
243
+
244
+ class IRMov(PreIR):
245
+ idx: Incomplete
246
+ reg_value: Incomplete
247
+ def __init__(self, register_idx, value) -> None: ...
248
+ @property
249
+ def overhead(self): ...
250
+ @property
251
+ def wait_time(self): ...
252
+
253
+ class IRNsw(OverlapIR):
254
+ idx: Incomplete
255
+ def __init__(self, register_idx) -> None: ...
256
+ @property
257
+ def overhead(self): ...
258
+ @property
259
+ def wait_time(self): ...
260
+
261
+ class IRNlw(OverlapIR):
262
+ idx: int
263
+ feedback_rd_chnl: Incomplete
264
+ def __init__(self, feedback_rd_chnl) -> None: ...
265
+ @property
266
+ def overhead(self): ...
267
+ @property
268
+ def wait_time(self): ...
269
+ def set_idx(self, register_idx) -> None: ...
270
+
271
+ class IRJmov(OverlapIR):
272
+ idx: Incomplete
273
+ def __init__(self, register_idx) -> None: ...
274
+ @property
275
+ def overhead(self): ...
276
+ @property
277
+ def wait_time(self): ...
278
+
279
+ class IRWaitDDR(OverlapIR):
280
+ @property
281
+ def overhead(self): ...
282
+ @property
283
+ def wait_time(self): ...
@@ -0,0 +1,7 @@
1
+ from ._checkers import BaseChecker as BaseChecker
2
+ from ._optimizations import BaseOptimizer as BaseOptimizer
3
+ from ._rules import BaseRule as BaseRule
4
+ from ._translate import NormalTranslator as NormalTranslator
5
+ from .kernel import Kernel as Kernel
6
+
7
+ def ir_pass(kernel: Kernel): ...
@@ -0,0 +1,16 @@
1
+ from _typeshed import Incomplete
2
+
3
+ __all__ = ['BaseOptimizer', 'JumpOptimizer', 'PlyiAmpOptimizer']
4
+
5
+ class BaseOptimizer:
6
+ ir_list: Incomplete
7
+ def __init__(self) -> None: ...
8
+ def optimize_ir(self, ir_list: list) -> list: ...
9
+
10
+ class JumpOptimizer(BaseOptimizer):
11
+ def __init__(self) -> None: ...
12
+ def optimize_ir(self, ir_list: list) -> list: ...
13
+
14
+ class PlyiAmpOptimizer(BaseOptimizer):
15
+ def __init__(self) -> None: ...
16
+ def optimize_ir(self, ir_list: list) -> list: ...
Binary file
@@ -0,0 +1,56 @@
1
+ from ._ir import *
2
+ from _typeshed import Incomplete
3
+
4
+ __all__ = ['BaseRule', 'BranchRule', 'TimingRule', 'EnvelopeRule', 'AddJumpRule', 'WitiRule', 'PlaceHolder', 'PreConfigRule', 'WtgAlign', 'PlayDDRRule']
5
+
6
+ class BaseRule:
7
+ ir_list: Incomplete
8
+ def __init__(self) -> None: ...
9
+ def order_ins(self, ir_list: list, **kwargs) -> list: ...
10
+
11
+ class BranchRule(BaseRule):
12
+ def __init__(self) -> None: ...
13
+ def order_ins(self, ir_list, **kwargs) -> list: ...
14
+
15
+ class TimingRule(BaseRule):
16
+ def __init__(self) -> None: ...
17
+ def order_ins(self, ir_list: list, **kwargs) -> list: ...
18
+ def insert_ir(self, ir_list_ordered) -> list: ...
19
+ def append_preir(self, ir): ...
20
+ def append_unfixir(self, ir): ...
21
+ def append_fixir(self, ir): ...
22
+ def append_overlapir(self, ir): ...
23
+ def append_reconstitutionir(self, ir): ...
24
+ def order_overlap(self, ir_list_ordered) -> list: ...
25
+
26
+ class PreConfigRule(BaseRule):
27
+ def __init__(self) -> None: ...
28
+ def order_ins(self, ir_list, **kwargs) -> list: ...
29
+
30
+ class EnvelopeRule(BaseRule):
31
+ def __init__(self) -> None: ...
32
+ def order_ins(self, ir_list: list, **kwargs): ...
33
+
34
+ class AddJumpRule(BaseRule):
35
+ def __init__(self) -> None: ...
36
+ def order_ins(self, ir_list, **kwargs) -> list: ...
37
+
38
+ class JumpRule(BaseRule):
39
+ def __init__(self) -> None: ...
40
+ def order_ins(self, ir_list, **kwargs) -> list: ...
41
+
42
+ class WitiRule(BaseRule):
43
+ def __init__(self) -> None: ...
44
+ def order_ins(self, ir_list, **kwargs) -> list: ...
45
+
46
+ class WtgAlign(BaseRule):
47
+ def __init__(self) -> None: ...
48
+ def order_ins(self, ir_list, **kwargs) -> list: ...
49
+
50
+ class PlaceHolder(BaseRule):
51
+ def __init__(self) -> None: ...
52
+ def order_ins(self, ir_list, **kwargs) -> list: ...
53
+
54
+ class PlayDDRRule(BaseRule):
55
+ def __init__(self) -> None: ...
56
+ def order_ins(self, ir_list, **kwargs) -> list: ...
@@ -0,0 +1,12 @@
1
+ import numpy as np
2
+
3
+ __all__ = ['NormalTranslator', 'PlayDDRTranslator']
4
+
5
+ class NormalTranslator:
6
+ def get_envelope(self, ir_list): ...
7
+ def translate_ir(self, ir_list: list) -> tuple[np.ndarray, str]: ...
8
+
9
+ class PlayDDRTranslator(NormalTranslator):
10
+ @staticmethod
11
+ def get_arb(ir_list): ...
12
+ def translate_ir(self, ir_list: list) -> tuple[list[str], str]: ...
Binary file
@@ -1,5 +1,10 @@
1
1
  from ._functions import *
2
+ from ._rules import *
3
+ from ._checkers import *
4
+ from ._optimizations import *
5
+ from ._translate import *
2
6
  import ast
7
+ from ._ir import IRBase
3
8
  from _typeshed import Incomplete
4
9
 
5
10
  __all__ = ['kernel', 'Kernel']
@@ -23,6 +28,9 @@ class Kernel(ast.NodeVisitor, metaclass=NSQCKernel):
23
28
  register_symbol: Incomplete
24
29
  register_idx: int
25
30
  instruction_list: Incomplete
31
+ jail_tag: Incomplete
32
+ compile_params: Incomplete
33
+ pass_params: Incomplete
26
34
  def __init__(self, func: Incomplete | None = None, args: Incomplete | None = None, kwargs: Incomplete | None = None) -> None: ...
27
35
  def clear(self) -> None: ...
28
36
  def parse(self): ...
@@ -36,10 +44,14 @@ class Kernel(ast.NodeVisitor, metaclass=NSQCKernel):
36
44
  def visit_BinOp(self, node: ast.BinOp): ...
37
45
  def visit_Constant(self, node): ...
38
46
  def visit_Expr(self, node: ast.Expr): ...
47
+ def visit_Compare(self, node: ast.Compare): ...
39
48
  def visit_If(self, node: ast.If): ...
49
+ def visit_For(self, node: ast.For): ...
40
50
  def visit_Return(self, node) -> None: ...
41
51
  def visit_FunctionDef(self, node: ast.FunctionDef): ...
42
52
  def visit_arguments(self, node: ast.arguments): ...
43
53
  def visit_Module(self, node: ast.Module): ...
54
+ def with_error(self, error: list): ...
55
+ def node_line(self, error_ir: IRBase): ...
44
56
 
45
57
  def kernel(func): ...
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: nsqdriver
3
- Version: 0.11.0
3
+ Version: 0.12.1
4
4
  Summary: Q series measurement and control equipment driver interface
5
5
  Home-page: https://g2hoyqcmh4.feishu.cn/wiki/Jgt1wxlKniveYQkqCgbcJHsMnoe
6
6
  Classifier: Intended Audience :: Developers
@@ -0,0 +1,38 @@
1
+ nsqdriver/NS_CST.py,sha256=zA5YcM65v66EqwBnplDvA6HM0I-y8damDOerE2CKyZE,8137
2
+ nsqdriver/NS_MCI.py,sha256=1zCpqkHr4tQdgb5iaMTKcjrhPKuWNSFUKR7V_8patG8,21659
3
+ nsqdriver/NS_QSYNC.py,sha256=bPD0cAUehRXpTDwMNZutB5AWhZM7iwKBD5t5jmJiBF4,27900
4
+ nsqdriver/__init__.py,sha256=bBea4t06XMlADXjUZiufwbckIDg5rSSZX-NlsrQb8uo,382
5
+ nsqdriver/common.py,sha256=5BRActb9TgNdVwWtfuZ_gki47H1WbABzYr5XbxLKlh4,519
6
+ nsqdriver/compiler/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
+ nsqdriver/compiler/assembler.cp310-win_amd64.pyd,sha256=h1NsPbCroYN84Fx1g1N8jBwWPwg6efGvssMq-LlU8Q0,378368
8
+ nsqdriver/compiler/ns_wave.cp310-win_amd64.pyd,sha256=QG7_ek21sV8ouWmJGLDhWmED_KnjjArazFlU0IGe86w,238080
9
+ nsqdriver/compiler/ns_wave.pyi,sha256=axQaxrMaKRPx8k9sDVlRj3SjR03AmXUDzkVW4D_2RJw,3975
10
+ nsqdriver/compiler/py_wave_asm.cp310-win_amd64.pyd,sha256=argdYjtAn83zb5GHCj1Lk4rAZRxrawdkyVN25DLRVc0,330752
11
+ nsqdriver/compiler/py_wave_asm.pyi,sha256=PqEZuNt83CCu_FJUczUjStowOz2TBgvfIytGanFPHuQ,685
12
+ nsqdriver/nswave/__init__.py,sha256=rAU1XD58JBF7iAYB5LVD-ZlEmQq9wyJrsRVHF-OOrzI,302
13
+ nsqdriver/nswave/_asm.pyi,sha256=f8IjCLPIocBZXTC8F5GFTlI6ZDa5-hhShJPjL166K4o,2846
14
+ nsqdriver/nswave/_checkers.cp310-win_amd64.pyd,sha256=wC5kuo0344p_vdqXSgRM-9WhYfhZ48hJIdgrajuvZCg,176640
15
+ nsqdriver/nswave/_checkers.pyi,sha256=931KCK3B87dE0qjtWcEt6C-_KSIdH0RRiIYer8p6Tgg,1459
16
+ nsqdriver/nswave/_errors.cp310-win_amd64.pyd,sha256=xfcR03xBFaBlsIakiXGks76uPopPDwhCOCtlJPsryww,78848
17
+ nsqdriver/nswave/_errors.pyi,sha256=A4LLc1zu6blJgmaAW_Wdx19jvFe1fkIggkTgYaQ8BIM,664
18
+ nsqdriver/nswave/_functions.cp310-win_amd64.pyd,sha256=NM4fKn1M-NF_yqQxC7WxocTHugTwkmIStqxlHJS9iL4,102400
19
+ nsqdriver/nswave/_functions.pyi,sha256=wOzfZITAzupxAONxGELNF_U-XMy1CTdr8iU8UeszTQk,1992
20
+ nsqdriver/nswave/_ir.cp310-win_amd64.pyd,sha256=lp-cNNsmP_sLucmsJLX9UJhGku84QIZ35au6JDTr3eQ,310784
21
+ nsqdriver/nswave/_ir.pyi,sha256=nPh7se2s1D80zMLF_bSrA4WpKI7uk-hrLRPs5JHadxc,7413
22
+ nsqdriver/nswave/_ir_pass.cp310-win_amd64.pyd,sha256=a15VZNhWL7ULNOj-2Z3zupt2CHO6ZlCKTVzDxtRlLy0,47616
23
+ nsqdriver/nswave/_ir_pass.pyi,sha256=UmQVLgcfX1rw9HuMorRCensJtxB4b7zh7uyIIlTF_A0,289
24
+ nsqdriver/nswave/_optimizations.cp310-win_amd64.pyd,sha256=kP93MhihS08Zo6I5Y4Fj2_wRhyUba-5ubV3EDfbEvwk,56832
25
+ nsqdriver/nswave/_optimizations.pyi,sha256=6WxLlO1aJEMMGB4qL3iSr0l43b6pSH-7qRSHXzCQQa8,508
26
+ nsqdriver/nswave/_rules.cp310-win_amd64.pyd,sha256=5SZ1kTe4O5ZxHlaJRCGCnx6qya0bmuvDLfwqEZ_pJ0Q,183296
27
+ nsqdriver/nswave/_rules.pyi,sha256=bMynUPRkrIfTNXPt0K7Rqy5cp4B-4EIdolznVBJaaAM,1926
28
+ nsqdriver/nswave/_translate.cp310-win_amd64.pyd,sha256=NX5kAk3heWl6PauAW-KaAcyFuS67DDl5Xr_JJMFvIXo,106496
29
+ nsqdriver/nswave/_translate.pyi,sha256=f0N24eSL7hKj2R04W-EFeEo9A8UYfzHOta7LQrDn-UA,387
30
+ nsqdriver/nswave/kernel.cp310-win_amd64.pyd,sha256=2NqZ84nfJI8z5xk2a0CgR_ac5QIUuGUP1t0OKHRjP1s,260608
31
+ nsqdriver/nswave/kernel.pyi,sha256=GBjjcfGBFiZ7_PCSgOWJcfVqckYg_r3j7PsMpUeaozE,2009
32
+ nsqdriver/wrapper/AWG_ADC.py,sha256=wLtkbJe39hDcnbWZ-8jyGZ78RQtn7iAZ7P7H0n-2IWU,19733
33
+ nsqdriver/wrapper/ND_NSMCI.py,sha256=e0j7BUdfrhfYb1GqBPlO4vSoZPXTKyictXy1nPvoMFE,6533
34
+ nsqdriver/wrapper/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
35
+ nsqdriver-0.12.1.dist-info/METADATA,sha256=CRt4Hagrwyq3nVUNVIRFDp1TzUlgAMZeso-wucO5EnE,4384
36
+ nsqdriver-0.12.1.dist-info/WHEEL,sha256=IqiWNwTSPPvorR7mTezuRY2eqj__44JKKkjOiewDX64,101
37
+ nsqdriver-0.12.1.dist-info/top_level.txt,sha256=o7EbQoFO6BoaG3KGbS9Lg_aRheZSY5KYzoYuI9vx-AI,10
38
+ nsqdriver-0.12.1.dist-info/RECORD,,
@@ -1,31 +0,0 @@
1
- nsqdriver/NS_CST.py,sha256=zA5YcM65v66EqwBnplDvA6HM0I-y8damDOerE2CKyZE,8137
2
- nsqdriver/NS_MCI.py,sha256=1zCpqkHr4tQdgb5iaMTKcjrhPKuWNSFUKR7V_8patG8,21659
3
- nsqdriver/NS_QSYNC.py,sha256=bPD0cAUehRXpTDwMNZutB5AWhZM7iwKBD5t5jmJiBF4,27900
4
- nsqdriver/__init__.py,sha256=bfMCMJb4yLNkN2cyoqWYf25ruwr9LD44a_qaNv4VLoM,382
5
- nsqdriver/common.py,sha256=5BRActb9TgNdVwWtfuZ_gki47H1WbABzYr5XbxLKlh4,519
6
- nsqdriver/compiler/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
- nsqdriver/compiler/assembler.cp310-win_amd64.pyd,sha256=Y2Q-KVfbKoG_voW5gyLrOteMomRcjOanvEDxNWnnB-Q,378368
8
- nsqdriver/compiler/ns_wave.cp310-win_amd64.pyd,sha256=0ZUGhC1SKXyWM_XzttGvP89jVsEfeSDOWaNpwX_7nXY,238080
9
- nsqdriver/compiler/ns_wave.pyi,sha256=axQaxrMaKRPx8k9sDVlRj3SjR03AmXUDzkVW4D_2RJw,3975
10
- nsqdriver/compiler/py_wave_asm.cp310-win_amd64.pyd,sha256=KrUpu2PY7gcCabH34yOKsI-nXsx6vgxU9w87ovYMxvM,330752
11
- nsqdriver/compiler/py_wave_asm.pyi,sha256=PqEZuNt83CCu_FJUczUjStowOz2TBgvfIytGanFPHuQ,685
12
- nsqdriver/nswave/__init__.py,sha256=r2dFkBg0xfQJanY_R5a6PgdzqPEItNq5PM_sW_tA0nA,90
13
- nsqdriver/nswave/_asm.pyi,sha256=PiCgsERDugyOrFIN3vO-lYzNQbKJiMqpJPr3lCHaQEU,2818
14
- nsqdriver/nswave/_checkers.cp310-win_amd64.pyd,sha256=8zlTzXAy8i48metOAhmeosl-4cEDbh6qLoOle4c7jqQ,176640
15
- nsqdriver/nswave/_errors.cp310-win_amd64.pyd,sha256=S6POCyRyOrvosjO8EtWDvpeklwBHw7sOnFgezL4GYwk,78848
16
- nsqdriver/nswave/_functions.cp310-win_amd64.pyd,sha256=bcsyLS3SL6w5vPyhnjYoKoD62dJkZvfj0_VqbzRv1Aw,95232
17
- nsqdriver/nswave/_functions.pyi,sha256=q0k-EWfz9gL6VOxERL5yQeE93NTVBCR4T-WgOpFF_9c,1591
18
- nsqdriver/nswave/_ir.cp310-win_amd64.pyd,sha256=g_4sB78F6fuK9mFl1i3Qmq7A9IAClJP0oZ5NaYQZxjM,284672
19
- nsqdriver/nswave/_ir_pass.cp310-win_amd64.pyd,sha256=tTm66IH3mBHPgDrgbVmNSib6E-r1ou4ZO4iBffkPSAk,47616
20
- nsqdriver/nswave/_optimizations.cp310-win_amd64.pyd,sha256=WVGx-QPiVCRSYGxjKih6nVekXvU48gY4EEiBDxnqnc4,56832
21
- nsqdriver/nswave/_rules.cp310-win_amd64.pyd,sha256=NUKlblwyWw5-ZgOl4C_mthwZ2e24h9E9zSnDr9PKdCs,172544
22
- nsqdriver/nswave/_translate.cp310-win_amd64.pyd,sha256=ZipTcvUtc9Vtf9Q-ehzMEp2YoiYleK3KarLMz6iLcWQ,93184
23
- nsqdriver/nswave/kernel.cp310-win_amd64.pyd,sha256=mPGwo0JMyHne47_Dkbjnme-c3_Q_i_TL-77OX27ywKs,252416
24
- nsqdriver/nswave/kernel.pyi,sha256=4V2Kb6zL599KSGEYqK_LZL9WOQ6dCLHNdnz5IYfdtik,1600
25
- nsqdriver/wrapper/AWG_ADC.py,sha256=wLtkbJe39hDcnbWZ-8jyGZ78RQtn7iAZ7P7H0n-2IWU,19733
26
- nsqdriver/wrapper/ND_NSMCI.py,sha256=e0j7BUdfrhfYb1GqBPlO4vSoZPXTKyictXy1nPvoMFE,6533
27
- nsqdriver/wrapper/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
28
- nsqdriver-0.11.0.dist-info/METADATA,sha256=zSKXPTYdAhiQkHzR8No13oKBzuTxG6teEdRVZl4a_U8,4384
29
- nsqdriver-0.11.0.dist-info/WHEEL,sha256=IqiWNwTSPPvorR7mTezuRY2eqj__44JKKkjOiewDX64,101
30
- nsqdriver-0.11.0.dist-info/top_level.txt,sha256=o7EbQoFO6BoaG3KGbS9Lg_aRheZSY5KYzoYuI9vx-AI,10
31
- nsqdriver-0.11.0.dist-info/RECORD,,