fix compilation with mimalloc
[liba.git] / liba.pyi
blobf017c54cfff766e0b1f5a439a134fa6363846fa9
1 from typing import Iterable, overload
2 from array import array
4 def array_i8(o: object) -> array[int]: ...
5 def array_u8(o: object) -> array[int]: ...
6 def array_i16(o: object) -> array[int]: ...
7 def array_u16(o: object) -> array[int]: ...
8 def array_i32(o: object) -> array[int]: ...
9 def array_u32(o: object) -> array[int]: ...
10 def array_i64(o: object) -> array[int]: ...
11 def array_u64(o: object) -> array[int]: ...
12 def array_f32(o: object) -> array[float]: ...
13 def array_f64(o: object) -> array[float]: ...
14 def array_num(o: object) -> array[float]: ...
15 def hash_bkdr(str: bytes, val: int = 0) -> int: ...
16 def hash_sdbm(str: bytes, val: int = 0) -> int: ...
17 def isqrt(x: int) -> int: ...
18 @overload
19 def sqrt_u32(x: Iterable[int]) -> array[int]: ...
20 @overload
21 def sqrt_u32(x: int) -> int: ...
22 @overload
23 def sqrt_u64(x: Iterable[int]) -> array[int]: ...
24 @overload
25 def sqrt_u64(x: int) -> int: ...
26 @overload
27 def rsqrt_f32(x: Iterable[float]) -> array[float]: ...
28 @overload
29 def rsqrt_f32(x: float) -> float: ...
30 @overload
31 def rsqrt_f64(x: Iterable[float]) -> array[float]: ...
32 @overload
33 def rsqrt_f64(x: float) -> float: ...
35 class crc8:
36     def __init__(self, poly: int, reversed=False) -> None: ...
37     def gen(self, poly: int, reversed=False) -> crc8: ...
38     def __call__(self, block: bytes, value=0) -> int: ...
39     def pack(self, block: bytes, value=0) -> bytes: ...
40     @property
41     def table(self) -> array[int]: ...
43 class crc16:
44     def __init__(self, poly: int, reversed=False) -> None: ...
45     def gen(self, poly: int, reversed=False) -> crc16: ...
46     def __call__(self, block: bytes, value=0) -> int: ...
47     def pack(self, block: bytes, value=0) -> bytes: ...
48     @property
49     def table(self) -> array[int]: ...
51 class crc32:
52     def __init__(self, poly: int, reversed=False) -> None: ...
53     def gen(self, poly: int, reversed=False) -> crc32: ...
54     def __call__(self, block: bytes, value=0) -> int: ...
55     def pack(self, block: bytes, value=0) -> bytes: ...
56     @property
57     def table(self) -> array[int]: ...
59 class crc64:
60     def __init__(self, poly: int, reversed=False) -> None: ...
61     def gen(self, poly: int, reversed=False) -> crc64: ...
62     def __call__(self, block: bytes, value=0) -> int: ...
63     def pack(self, block: bytes, value=0) -> bytes: ...
64     @property
65     def table(self) -> array[int]: ...
67 class hpf:
68     def __init__(self, fc: float, ts: float) -> None: ...
69     def gen(self, fc: float, ts: float) -> hpf: ...
70     def __call__(self, x: float) -> float: ...
71     def zero(self) -> hpf: ...
72     @property
73     def alpha(self) -> float: ...
74     @alpha.setter
75     def alpha(self, x: float) -> None: ...
76     @property
77     def output(self) -> float: ...
78     @property
79     def input(self) -> float: ...
81 class lpf:
82     def __init__(self, fc: float, ts: float) -> None: ...
83     def gen(self, fc: float, ts: float) -> lpf: ...
84     def __call__(self, x: float) -> float: ...
85     def zero(self) -> lpf: ...
86     @property
87     def alpha(self) -> float: ...
88     @alpha.setter
89     def alpha(self, x: float) -> None: ...
90     @property
91     def output(self) -> float: ...
93 class mf:
94     NUL: int
95     GAUSS: int
96     GAUSS2: int
97     GBELL: int
98     SIG: int
99     DSIG: int
100     PSIG: int
101     TRAP: int
102     TRI: int
103     LINS: int
104     LINZ: int
105     S: int
106     Z: int
107     PI: int
108     @staticmethod
109     @overload
110     def __call__(e: int, x: Iterable[float], a: Iterable[float]) -> array[float]: ...
111     @staticmethod
112     @overload
113     def __call__(e: int, x: float, a: Iterable[float]) -> float: ...
114     @staticmethod
115     @overload
116     def gauss(x: Iterable[float], sigma: float, c: float) -> array[float]: ...
117     @staticmethod
118     @overload
119     def gauss(x: float, sigma: float, c: float) -> float: ...
120     @staticmethod
121     @overload
122     def gauss2(
123         x: Iterable[float], sigma1: float, c1: float, sigma2: float, c2: float
124     ) -> array[float]: ...
125     @staticmethod
126     @overload
127     def gauss2(x: float, sigma1: float, c1: float, sigma2: float, c2: float) -> float: ...
128     @staticmethod
129     @overload
130     def gbell(x: Iterable[float], a: float, b: float, c: float) -> array[float]: ...
131     @staticmethod
132     @overload
133     def gbell(x: float, a: float, b: float, c: float) -> float: ...
134     @staticmethod
135     @overload
136     def sig(x: Iterable[float], a: float, c: float) -> array[float]: ...
137     @staticmethod
138     @overload
139     def sig(x: float, a: float, c: float) -> float: ...
140     @staticmethod
141     @overload
142     def dsig(x: Iterable[float], a1: float, c1: float, a2: float, c2: float) -> array[float]: ...
143     @staticmethod
144     @overload
145     def dsig(x: float, a1: float, c1: float, a2: float, c2: float) -> float: ...
146     @staticmethod
147     @overload
148     def psig(x: Iterable[float], a1: float, c1: float, a2: float, c2: float) -> array[float]: ...
149     @staticmethod
150     @overload
151     def psig(x: float, a1: float, c1: float, a2: float, c2: float) -> float: ...
152     @staticmethod
153     @overload
154     def trap(x: Iterable[float], a: float, b: float, c: float, d: float) -> array[float]: ...
155     @staticmethod
156     @overload
157     def trap(x: float, a: float, b: float, c: float, d: float) -> float: ...
158     @staticmethod
159     @overload
160     def tri(x: Iterable[float], a: float, b: float, c: float) -> array[float]: ...
161     @staticmethod
162     @overload
163     def tri(x: float, a: float, b: float, c: float) -> float: ...
164     @staticmethod
165     @overload
166     def lins(x: Iterable[float], a: float, b: float) -> array[float]: ...
167     @staticmethod
168     @overload
169     def lins(x: float, a: float, b: float) -> float: ...
170     @staticmethod
171     @overload
172     def linz(x: Iterable[float], a: float, b: float) -> array[float]: ...
173     @staticmethod
174     @overload
175     def linz(x: float, a: float, b: float) -> float: ...
176     @staticmethod
177     @overload
178     def s(x: Iterable[float], a: float, b: float) -> array[float]: ...
179     @staticmethod
180     @overload
181     def s(x: float, a: float, b: float) -> float: ...
182     @staticmethod
183     @overload
184     def z(x: Iterable[float], a: float, b: float) -> array[float]: ...
185     @staticmethod
186     @overload
187     def z(x: float, a: float, b: float) -> float: ...
188     @staticmethod
189     @overload
190     def pi(x: Iterable[float], a: float, b: float, c: float, d: float) -> array[float]: ...
191     @staticmethod
192     @overload
193     def pi(x: float, a: float, b: float, c: float, d: float) -> float: ...
195 class pid:
196     RUN: int
197     POS: int
198     INC: int
199     def __init__(self) -> None: ...
200     def kpid(self, kp: float, ki: float, kd: float) -> pid: ...
201     def run(self, set: float, fdb: float) -> float: ...
202     def pos(self, set: float, fdb: float) -> float: ...
203     def inc(self, set: float, fdb: float) -> float: ...
204     def zero(self) -> pid: ...
205     @property
206     def kp(self) -> float: ...
207     @kp.setter
208     def kp(self, kp: float) -> None: ...
209     @property
210     def ki(self) -> float: ...
211     @ki.setter
212     def ki(self, ki: float) -> None: ...
213     @property
214     def kd(self) -> float: ...
215     @kd.setter
216     def kd(self, kd: float) -> None: ...
217     @property
218     def summax(self) -> float: ...
219     @summax.setter
220     def summax(self, summax: float) -> None: ...
221     @property
222     def summin(self) -> float: ...
223     @summin.setter
224     def summin(self, summin: float) -> None: ...
225     @property
226     def outmax(self) -> float: ...
227     @outmax.setter
228     def outmax(self, outmax: float) -> None: ...
229     @property
230     def outmin(self) -> float: ...
231     @outmin.setter
232     def outmin(self, outmin: float) -> None: ...
233     @property
234     def out(self) -> float: ...
235     @property
236     def fdb(self) -> float: ...
237     @property
238     def err(self) -> float: ...
240 class pid_fuzzy:
241     CAP: int
242     CAP_ALGEBRA: int
243     CAP_BOUNDED: int
244     CUP: int
245     CUP_ALGEBRA: int
246     CUP_BOUNDED: int
247     EQU: int
248     def __init__(self) -> None: ...
249     def op(self, op: int) -> pid_fuzzy: ...
250     def rule(
251         self,
252         me: Iterable[Iterable[float]],
253         mec: Iterable[Iterable[float]],
254         mkp: Iterable[Iterable[float]],
255         mki: Iterable[Iterable[float]],
256         mkd: Iterable[Iterable[float]],
257     ) -> pid_fuzzy: ...
258     def set_joint(self, num: int) -> pid_fuzzy: ...
259     def kpid(self, kp: float, ki: float, kd: float) -> pid_fuzzy: ...
260     def run(self, set: float, fdb: float) -> float: ...
261     def pos(self, set: float, fdb: float) -> float: ...
262     def inc(self, set: float, fdb: float) -> float: ...
263     def zero(self) -> pid_fuzzy: ...
264     @property
265     def joint(self) -> int: ...
266     @joint.setter
267     def joint(self, joint: int) -> None: ...
268     @property
269     def kp(self) -> float: ...
270     @kp.setter
271     def kp(self, kp: float) -> None: ...
272     @property
273     def ki(self) -> float: ...
274     @ki.setter
275     def ki(self, ki: float) -> None: ...
276     @property
277     def kd(self) -> float: ...
278     @kd.setter
279     def kd(self, kd: float) -> None: ...
280     @property
281     def summax(self) -> float: ...
282     @summax.setter
283     def summax(self, summax: float) -> None: ...
284     @property
285     def summin(self) -> float: ...
286     @summin.setter
287     def summin(self, summin: float) -> None: ...
288     @property
289     def outmax(self) -> float: ...
290     @outmax.setter
291     def outmax(self, outmax: float) -> None: ...
292     @property
293     def outmin(self) -> float: ...
294     @outmin.setter
295     def outmin(self, outmin: float) -> None: ...
296     @property
297     def out(self) -> float: ...
298     @property
299     def fdb(self) -> float: ...
300     @property
301     def err(self) -> float: ...
302     @property
303     def order(self) -> int: ...
305 class pid_neuro:
306     def __init__(self) -> None: ...
307     def kpid(self, k: float, kp: float, ki: float, kd: float) -> pid_neuro: ...
308     def wpid(self, wp: float, wi: float, wd: float) -> pid_neuro: ...
309     def run(self, set: float, fdb: float) -> float: ...
310     def inc(self, set: float, fdb: float) -> float: ...
311     def zero(self) -> pid_neuro: ...
312     @property
313     def k(self) -> float: ...
314     @k.setter
315     def k(self, k: float) -> None: ...
316     @property
317     def kp(self) -> float: ...
318     @kp.setter
319     def kp(self, kp: float) -> None: ...
320     @property
321     def ki(self) -> float: ...
322     @ki.setter
323     def ki(self, ki: float) -> None: ...
324     @property
325     def kd(self) -> float: ...
326     @kd.setter
327     def kd(self, kd: float) -> None: ...
328     @property
329     def wp(self) -> float: ...
330     @wp.setter
331     def wp(self, wp: float) -> None: ...
332     @property
333     def wi(self) -> float: ...
334     @wi.setter
335     def wi(self, wi: float) -> None: ...
336     @property
337     def wd(self) -> float: ...
338     @wd.setter
339     def wd(self, wd: float) -> None: ...
340     @property
341     def summax(self) -> float: ...
342     @summax.setter
343     def summax(self, summax: float) -> None: ...
344     @property
345     def summin(self) -> float: ...
346     @summin.setter
347     def summin(self, summin: float) -> None: ...
348     @property
349     def outmax(self) -> float: ...
350     @outmax.setter
351     def outmax(self, outmax: float) -> None: ...
352     @property
353     def outmin(self) -> float: ...
354     @outmin.setter
355     def outmin(self, outmin: float) -> None: ...
356     @property
357     def out(self) -> float: ...
358     @property
359     def fdb(self) -> float: ...
360     @property
361     def err(self) -> float: ...
362     @property
363     def ec(self) -> float: ...
365 @overload
366 def poly_eval(x: Iterable[float], *a: float) -> array[float]: ...
367 @overload
368 def poly_eval(x: float, *a: float) -> float: ...
369 @overload
370 def poly_evar(x: Iterable[float], *a: float) -> array[float]: ...
371 @overload
372 def poly_evar(x: float, *a: float) -> float: ...
374 class polytraj3:
375     def __init__(
376         self,
377         t0: float,
378         t1: float,
379         q0: float,
380         q1: float,
381         v0: float = 0,
382         v1: float = 0,
383     ) -> None: ...
384     def gen(
385         self,
386         t0: float,
387         t1: float,
388         q0: float,
389         q1: float,
390         v0: float = 0,
391         v1: float = 0,
392     ) -> polytraj3: ...
393     @overload
394     def pos(self, dt: Iterable[float]) -> array[float]: ...
395     @overload
396     def pos(self, dt: float) -> float: ...
397     @overload
398     def vel(self, dt: Iterable[float]) -> array[float]: ...
399     @overload
400     def vel(self, dt: float) -> float: ...
401     @overload
402     def acc(self, dt: Iterable[float]) -> array[float]: ...
403     @overload
404     def acc(self, dt: float) -> float: ...
405     @property
406     def q(self) -> array[float]: ...
407     @property
408     def v(self) -> array[float]: ...
409     @property
410     def a(self) -> array[float]: ...
412 class polytraj5:
413     def __init__(
414         self,
415         t0: float,
416         t1: float,
417         q0: float,
418         q1: float,
419         v0: float = 0,
420         v1: float = 0,
421         a0: float = 0,
422         a1: float = 0,
423     ) -> None: ...
424     def gen(
425         self,
426         t0: float,
427         t1: float,
428         q0: float,
429         q1: float,
430         v0: float = 0,
431         v1: float = 0,
432         a0: float = 0,
433         a1: float = 0,
434     ) -> polytraj5: ...
435     @overload
436     def pos(self, dt: Iterable[float]) -> array[float]: ...
437     @overload
438     def pos(self, dt: float) -> float: ...
439     @overload
440     def vel(self, dt: Iterable[float]) -> array[float]: ...
441     @overload
442     def vel(self, dt: float) -> float: ...
443     @overload
444     def acc(self, dt: Iterable[float]) -> array[float]: ...
445     @overload
446     def acc(self, dt: float) -> float: ...
447     @property
448     def q(self) -> array[float]: ...
449     @property
450     def v(self) -> array[float]: ...
451     @property
452     def a(self) -> array[float]: ...
454 class polytraj7:
455     def __init__(
456         self,
457         t0: float,
458         t1: float,
459         q0: float,
460         q1: float,
461         v0: float = 0,
462         v1: float = 0,
463         a0: float = 0,
464         a1: float = 0,
465         j0: float = 0,
466         j1: float = 0,
467     ) -> None: ...
468     def gen(
469         self,
470         t0: float,
471         t1: float,
472         q0: float,
473         q1: float,
474         v0: float = 0,
475         v1: float = 0,
476         a0: float = 0,
477         a1: float = 0,
478         j0: float = 0,
479         j1: float = 0,
480     ) -> polytraj7: ...
481     @overload
482     def pos(self, dt: Iterable[float]) -> array[float]: ...
483     @overload
484     def pos(self, dt: float) -> float: ...
485     @overload
486     def vel(self, dt: Iterable[float]) -> array[float]: ...
487     @overload
488     def vel(self, dt: float) -> float: ...
489     @overload
490     def acc(self, dt: Iterable[float]) -> array[float]: ...
491     @overload
492     def acc(self, dt: float) -> float: ...
493     @overload
494     def jer(self, dt: Iterable[float]) -> array[float]: ...
495     @overload
496     def jer(self, dt: float) -> float: ...
497     @property
498     def q(self) -> array[float]: ...
499     @property
500     def v(self) -> array[float]: ...
501     @property
502     def a(self) -> array[float]: ...
503     @property
504     def j(self) -> array[float]: ...
506 class tf:
507     def __init__(self, num: Iterable[float], den: Iterable[float]) -> None: ...
508     @property
509     def input(self) -> array[float]: ...
510     @property
511     def num(self) -> array[float]: ...
512     @num.setter
513     def num(self, num: Iterable[float]) -> None: ...
514     @property
515     def output(self) -> array[float]: ...
516     @property
517     def den(self) -> array[float]: ...
518     @den.setter
519     def den(self, den: Iterable[float]) -> None: ...
520     def __call__(self, x: float) -> float: ...
521     def zero(self) -> tf: ...
523 class version:
524     @staticmethod
525     def check(major: int = 0, minor: int = 0, patch: int = 0) -> int: ...
526     def __init__(self, major: int = 0, minor: int = 0, third: int = 0, extra: int = 0) -> None: ...
527     def compare(self, other: version) -> int: ...
528     def __lt__(self, other: version) -> bool: ...
529     def __gt__(self, other: version) -> bool: ...
530     def __le__(self, other: version) -> bool: ...
531     def __ge__(self, other: version) -> bool: ...
532     def __eq__(self, other: version) -> bool: ...
533     def __ne__(self, other: version) -> bool: ...
534     def parse(self, ver: bytes) -> version: ...
535     @property
536     def major(self) -> int: ...
537     @major.setter
538     def major(self, major: int) -> None: ...
539     @property
540     def minor(self) -> int: ...
541     @minor.setter
542     def minor(self, minor: int) -> None: ...
543     @property
544     def third(self) -> int: ...
545     @third.setter
546     def third(self, third: int) -> None: ...
547     @property
548     def extra(self) -> int: ...
549     @extra.setter
550     def extra(self, extra: int) -> None: ...
551     MAJOR: int
552     MINOR: int
553     PATCH: int
554     TWEAK: int
556 VERSION: str