Coverage for src / arraybridge / __init__.py: 100%

14 statements  

« prev     ^ index     » next       coverage.py v7.13.1, created at 2026-01-10 22:33 +0000

1""" 

2arraybridge: Unified API for NumPy, CuPy, PyTorch, TensorFlow, JAX, and pyclesperanto. 

3 

4This package provides automatic memory type conversion, declarative decorators, 

5and unified utilities for working with multiple array/tensor frameworks. 

6""" 

7 

8__version__ = "0.2.0" 

9 

10from .converters import convert_memory, detect_memory_type 

11from .decorators import ( 

12 DtypeConversion, 

13 cupy, 

14 jax, 

15 memory_types, 

16 numpy, 

17 pyclesperanto, 

18 tensorflow, 

19 torch, 

20) 

21from .dtype_scaling import SCALING_FUNCTIONS 

22from .exceptions import MemoryConversionError 

23from .framework_config import _FRAMEWORK_CONFIG 

24from .framework_ops import _FRAMEWORK_OPS 

25from .gpu_cleanup import cleanup_all_gpu_frameworks 

26from .oom_recovery import _execute_with_oom_recovery 

27from .slice_processing import process_slices 

28from .stack_utils import stack_slices, unstack_slices 

29from .types import CPU_MEMORY_TYPES, GPU_MEMORY_TYPES, SUPPORTED_MEMORY_TYPES, MemoryType 

30from .utils import _ensure_module, _get_device_id, _supports_dlpack 

31 

32__all__ = [ 

33 # Types 

34 "MemoryType", 

35 "CPU_MEMORY_TYPES", 

36 "GPU_MEMORY_TYPES", 

37 "SUPPORTED_MEMORY_TYPES", 

38 # Converters 

39 "convert_memory", 

40 "detect_memory_type", 

41 # Decorators 

42 "memory_types", 

43 "numpy", 

44 "cupy", 

45 "torch", 

46 "tensorflow", 

47 "jax", 

48 "pyclesperanto", 

49 "DtypeConversion", 

50 # Stack utilities 

51 "stack_slices", 

52 "unstack_slices", 

53 # Slice processing 

54 "process_slices", 

55 # GPU cleanup 

56 "cleanup_all_gpu_frameworks", 

57 # Exceptions 

58 "MemoryConversionError", 

59 # Scaling 

60 "SCALING_FUNCTIONS", 

61 # Framework config (internal but needed by some consumers) 

62 "_FRAMEWORK_CONFIG", 

63 "_FRAMEWORK_OPS", 

64 # OOM recovery 

65 "_execute_with_oom_recovery", 

66 # Utils 

67 "_ensure_module", 

68 "_supports_dlpack", 

69 "_get_device_id", 

70]