mirror of
https://github.com/pocketpy/pocketpy
synced 2026-02-04 14:40:16 +00:00
62 lines
1.7 KiB
Python
62 lines
1.7 KiB
Python
from typing import overload, Self
|
|
|
|
intptr = int
|
|
|
|
def malloc(size: int) -> intptr: ...
|
|
def free(ptr: intptr) -> None: ...
|
|
|
|
def memcpy(dst: intptr, src: intptr, n: int) -> None: ...
|
|
def memset(s: intptr, c: int, n: int) -> None: ...
|
|
def memcmp(s1: intptr, s2: intptr, n: int) -> int: ...
|
|
|
|
def addressof(obj: Memory) -> intptr: ...
|
|
def sizeof(obj: type[Memory]) -> int: ...
|
|
|
|
def read_cstr(p: intptr) -> str: ...
|
|
def read_bytes(p: intptr, n: int) -> bytes: ...
|
|
def write_cstr(p: intptr, data: str) -> None: ...
|
|
def write_bytes(p: intptr, data: bytes) -> None: ...
|
|
|
|
class Memory: ...
|
|
|
|
class _BuiltinMemory[T](Memory):
|
|
value: T
|
|
|
|
def __new__(cls, value: T | None = None) -> None: ...
|
|
@staticmethod
|
|
def read(p: intptr, offset: int) -> T: ...
|
|
@staticmethod
|
|
def write(p: intptr, offset: int, value: T) -> None: ...
|
|
@staticmethod
|
|
def array(length: int) -> Self: ...
|
|
|
|
@property
|
|
def size(self) -> int: ...
|
|
|
|
def __getitem__(self, index: int) -> T: ...
|
|
def __setitem__(self, index: int, value: T) -> None: ...
|
|
|
|
class Char(_BuiltinMemory[int]): ...
|
|
class UChar(_BuiltinMemory[int]): ...
|
|
class Short(_BuiltinMemory[int]): ...
|
|
class UShort(_BuiltinMemory[int]): ...
|
|
class Int(_BuiltinMemory[int]): ...
|
|
class UInt(_BuiltinMemory[int]): ...
|
|
class Long(_BuiltinMemory[int]): ...
|
|
class ULong(_BuiltinMemory[int]): ...
|
|
class LongLong(_BuiltinMemory[int]): ...
|
|
|
|
class Float(_BuiltinMemory[float]): ...
|
|
class Double(_BuiltinMemory[float]): ...
|
|
class Pointer(_BuiltinMemory[intptr]): ...
|
|
class Bool(_BuiltinMemory[bool]): ...
|
|
|
|
INT8: _BuiltinMemory[int]
|
|
UINT8: _BuiltinMemory[int]
|
|
INT16: _BuiltinMemory[int]
|
|
UINT16: _BuiltinMemory[int]
|
|
INT32: _BuiltinMemory[int]
|
|
UINT32: _BuiltinMemory[int]
|
|
INT64: _BuiltinMemory[int]
|
|
UINT64: _BuiltinMemory[int]
|