c.pyi 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  1. from typing import overload
  2. def malloc(size: int) -> 'void_p': ...
  3. def free(ptr: 'void_p') -> None: ...
  4. def sizeof(type: str) -> int: ...
  5. def refl(name: str) -> '_refl': ...
  6. def memset(ptr: 'void_p', value: int, size: int) -> None: ...
  7. def memcpy(dst: 'void_p', src: 'void_p', size: int) -> None: ...
  8. class _refl:
  9. def __call__(self) -> 'struct': ...
  10. def name(self) -> str: ...
  11. def size(self) -> int: ...
  12. class void_p:
  13. def __add__(self, i: int) -> 'void_p': ...
  14. def __sub__(self, i: int) -> 'void_p': ...
  15. def __eq__(self, other: 'void_p') -> bool: ...
  16. def __ne__(self, other: 'void_p') -> bool: ...
  17. def hex(self) -> str: ...
  18. @staticmethod
  19. def from_hex(s: str) -> 'void_p': ...
  20. def read_char(self) -> int: ...
  21. def read_uchar(self) -> int: ...
  22. def read_short(self) -> int: ...
  23. def read_ushort(self) -> int: ...
  24. def read_int(self) -> int: ...
  25. def read_uint(self) -> int: ...
  26. def read_long(self) -> int: ...
  27. def read_ulong(self) -> int: ...
  28. def read_longlong(self) -> int: ...
  29. def read_ulonglong(self) -> int: ...
  30. def read_float(self) -> float: ...
  31. def read_double(self) -> float: ...
  32. def read_bool(self) -> bool: ...
  33. def read_void_p(self) -> 'void_p': ...
  34. def read_bytes(self, size: int) -> bytes: ...
  35. def read_struct(self, type: str) -> 'struct': ...
  36. def write_char(self, value: int) -> None: ...
  37. def write_uchar(self, value: int) -> None: ...
  38. def write_short(self, value: int) -> None: ...
  39. def write_ushort(self, value: int) -> None: ...
  40. def write_int(self, value: int) -> None: ...
  41. def write_uint(self, value: int) -> None: ...
  42. def write_long(self, value: int) -> None: ...
  43. def write_ulong(self, value: int) -> None: ...
  44. def write_longlong(self, value: int) -> None: ...
  45. def write_ulonglong(self, value: int) -> None: ...
  46. def write_float(self, value: float) -> None: ...
  47. def write_double(self, value: float) -> None: ...
  48. def write_bool(self, value: bool) -> None: ...
  49. def write_void_p(self, value: 'void_p') -> None: ...
  50. def write_bytes(self, value: bytes) -> None: ...
  51. def write_struct(self, value: 'struct') -> None: ...
  52. class struct:
  53. @overload
  54. def __init__(self, size: int): ...
  55. @overload
  56. def __init__(self, p: 'void_p', size: int): ...
  57. @overload
  58. def __init__(self, s: str): ...
  59. @overload
  60. def __init__(self, b: bytes): ...
  61. def addr(self) -> 'void_p': ...
  62. def copy(self) -> 'struct': ...
  63. def size(self) -> int: ...
  64. def __eq__(self, other: 'struct') -> bool: ...
  65. def __ne__(self, other: 'struct') -> bool: ...
  66. def to_string(self) -> str: ...
  67. def to_bytes(self) -> bytes: ...
  68. def read_char(self, offset=0) -> int: ...
  69. def read_uchar(self, offset=0) -> int: ...
  70. def read_short(self, offset=0) -> int: ...
  71. def read_ushort(self, offset=0) -> int: ...
  72. def read_int(self, offset=0) -> int: ...
  73. def read_uint(self, offset=0) -> int: ...
  74. def read_long(self, offset=0) -> int: ...
  75. def read_ulong(self, offset=0) -> int: ...
  76. def read_longlong(self, offset=0) -> int: ...
  77. def read_ulonglong(self, offset=0) -> int: ...
  78. def read_float(self, offset=0) -> float: ...
  79. def read_double(self, offset=0) -> float: ...
  80. def read_bool(self, offset=0) -> bool: ...
  81. def read_void_p(self, offset=0) -> 'void_p': ...
  82. def write_char(self, value: int, offset=0) -> None: ...
  83. def write_uchar(self, value: int, offset=0) -> None: ...
  84. def write_short(self, value: int, offset=0) -> None: ...
  85. def write_ushort(self, value: int, offset=0) -> None: ...
  86. def write_int(self, value: int, offset=0) -> None: ...
  87. def write_uint(self, value: int, offset=0) -> None: ...
  88. def write_long(self, value: int, offset=0) -> None: ...
  89. def write_ulong(self, value: int, offset=0) -> None: ...
  90. def write_longlong(self, value: int, offset=0) -> None: ...
  91. def write_ulonglong(self, value: int, offset=0) -> None: ...
  92. def write_float(self, value: float, offset=0) -> None: ...
  93. def write_double(self, value: float, offset=0) -> None: ...
  94. def write_bool(self, value: bool, offset=0) -> None: ...
  95. def write_void_p(self, value: 'void_p', offset=0) -> None: ...
  96. char_ = refl("char")
  97. uchar_ = refl("uchar")
  98. short_ = refl("short")
  99. ushort_ = refl("ushort")
  100. int_ = refl("int")
  101. uint_ = refl("uint")
  102. long_ = refl("long")
  103. ulong_ = refl("ulong")
  104. longlong_ = refl("longlong")
  105. ulonglong_ = refl("ulonglong")
  106. float_ = refl("float")
  107. double_ = refl("double")
  108. bool_ = refl("bool")
  109. char_p = void_p
  110. uchar_p = void_p
  111. short_p = void_p
  112. ushort_p = void_p
  113. int_p = void_p
  114. uint_p = void_p
  115. long_p = void_p
  116. ulong_p = void_p
  117. longlong_p = void_p
  118. ulonglong_p = void_p
  119. float_p = void_p
  120. double_p = void_p
  121. bool_p = void_p