Allocate size-specced "empty" sequence from default values by type
							parent
							
								
									2f4539720f
								
							
						
					
					
						commit
						e0430cb81c
					
				|  | @ -719,7 +719,7 @@ class ShmList(ShareableList): | ||||||
|     Carbon copy of ``.shared_memory.ShareableList`` with a few |     Carbon copy of ``.shared_memory.ShareableList`` with a few | ||||||
|     enhancements: |     enhancements: | ||||||
| 
 | 
 | ||||||
|     - readonly mode via instance var flag |     - readonly mode via instance var flag  `._readonly: bool` | ||||||
|     - ``.__getitem__()`` accepts ``slice`` inputs |     - ``.__getitem__()`` accepts ``slice`` inputs | ||||||
|     - exposes the underlying buffer "name" as a ``.key: str`` |     - exposes the underlying buffer "name" as a ``.key: str`` | ||||||
| 
 | 
 | ||||||
|  | @ -743,6 +743,10 @@ class ShmList(ShareableList): | ||||||
|     def key(self) -> str: |     def key(self) -> str: | ||||||
|         return self._key |         return self._key | ||||||
| 
 | 
 | ||||||
|  |     @property | ||||||
|  |     def readonly(self) -> bool: | ||||||
|  |         return self._readonly | ||||||
|  | 
 | ||||||
|     def __setitem__( |     def __setitem__( | ||||||
|         self, |         self, | ||||||
|         position, |         position, | ||||||
|  | @ -781,13 +785,21 @@ def open_shm_list( | ||||||
|     key: str, |     key: str, | ||||||
|     sequence: list | None = None, |     sequence: list | None = None, | ||||||
|     size: int = int(2 ** 10), |     size: int = int(2 ** 10), | ||||||
|     dtype: np.dtype | None = None, |     dtype: float | int | bool | str | bytes | None = float, | ||||||
|     readonly: bool = True, |     readonly: bool = True, | ||||||
| 
 | 
 | ||||||
| ) -> ShmList: | ) -> ShmList: | ||||||
| 
 | 
 | ||||||
|     if sequence is None: |     if sequence is None: | ||||||
|         sequence = list(map(float, range(size))) |         default = { | ||||||
|  |             float: 0., | ||||||
|  |             int: 0, | ||||||
|  |             bool: True, | ||||||
|  |             str: 'doggy', | ||||||
|  |             None: None, | ||||||
|  |         }[dtype] | ||||||
|  |         sequence = [default] * size | ||||||
|  |         # sequence = [0.] * size | ||||||
| 
 | 
 | ||||||
|     shml = ShmList( |     shml = ShmList( | ||||||
|         sequence=sequence, |         sequence=sequence, | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue