bool-hybrid-array 9.11.6__py3-none-any.whl → 9.11.7__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -5,7 +5,7 @@ from . import core
5
5
  from .core import __builtins__,builtins
6
6
  try:from . import int_array
7
7
  except:pass
8
- __version__ = "9.11.6"
8
+ __version__ = "9.11.7"
9
9
  public_objects = []
10
10
  for name in dir(core):
11
11
  if not name.startswith("_"):
bool_hybrid_array/core.py CHANGED
@@ -304,6 +304,9 @@ class BoolHybridArray(MutableSequence,Exception,metaclass=ResurrectMeta):
304
304
  self.size -= 1
305
305
  def __str__(self) -> str:
306
306
  return f"BoolHybridArr([{','.join(map(str,self))}])"
307
+ def __reversed__(self):
308
+ if not self:return BHA_Iterator([])
309
+ return BHA_Iterator(map(self.__getitem__,range(-1,-1,-1)))
307
310
  def insert(self, key: int, value: bool) -> None:
308
311
  value = bool(value)
309
312
  key = key if key >= 0 else key + self.size
@@ -325,8 +328,9 @@ class BoolHybridArray(MutableSequence,Exception,metaclass=ResurrectMeta):
325
328
  self.large.insert(pos, key)
326
329
  self.size += 1
327
330
  def __len__(self) -> int:
328
- return self.size
331
+ return int(self.size)
329
332
  def __iter__(self):
333
+ if not self:return BHA_Iterator([])
330
334
  return BHA_Iterator(map(self.__getitem__,range(self.size)))
331
335
  def __next__(self):
332
336
  return next(self.generator)
@@ -342,7 +346,7 @@ class BoolHybridArray(MutableSequence,Exception,metaclass=ResurrectMeta):
342
346
  else:
343
347
  return len(self.large) == self.size-self.split_index-1 or b
344
348
  def __bool__(self) -> bool:
345
- return self.size
349
+ return bool(self.size)
346
350
  def __any__(self):
347
351
  return T in self
348
352
  def __all__(self):
@@ -845,7 +849,7 @@ class BHA_Queue:
845
849
  self.a = BoolHybridArr(data,*a,**k)
846
850
  self.b = BoolHybridArr([],*a,**k)
847
851
  def __str__(self):
848
- return f"BHA_Queue([{','.join(itertools.chain(reversed(map(str,self.b)),self.a))}])"
852
+ return f"BHA_Queue([{','.join(itertools.chain(map(str,reversed(self.b)),map(str,self.a)))}])"
849
853
  __repr__ = __str__
850
854
  def enqueue(self,v):
851
855
  self.a.push(v)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: bool-hybrid-array
3
- Version: 9.11.6
3
+ Version: 9.11.7
4
4
  Summary: 一个高效的布尔数组(密集+稀疏混合存储,节省内存)
5
5
  Home-page: https://github.com/BKsell/bool-hybrid-array
6
6
  Author: 蔡靖杰
@@ -612,7 +612,7 @@ print(f"出队2个元素后: {q}") # 输出:BHA_Queue([T,T,F,T,F])
612
612
  * **9.11.4**:修复TypeError: __dict__ must be set to a dictionary, not a 'IntHybridArray'的错误
613
613
  * **9.11.5**:新增BHA_Queue双栈实现队列
614
614
  * **9.11.6**:修复从9.11.3版本开始cpython用户无法安装bool-hybrid-array包的问题
615
-
615
+ * **9.11.7**:修复TypeError: 'map' object is not reversible的错误
616
616
 
617
617
 
618
618
 
@@ -0,0 +1,10 @@
1
+ bool_hybrid_array/__init__.py,sha256=MvnpVFUFs0Dtf69ZsTguNfXP2k1PHhR2e9Hwsz6weR4,1039
2
+ bool_hybrid_array/__main__.py,sha256=pjoWN4Noa_K44fqQPqp8H-diKSDf0Da8hdWFgvWUigQ,9083
3
+ bool_hybrid_array/core.py,sha256=QlAhD8TSRIym76ZjtfYdLsaqtz3Es_dYT754RMQoUoY,40854
4
+ bool_hybrid_array/秘密.md,sha256=Ii2NvXmv-Ktu04zJsGLcQZvlzT4gOatByE4B2wTK1Ks,48
5
+ bool_hybrid_array/int_array/__init__.py,sha256=HPBdZu5qlXaRI4n_oK6WhnG4ml8H-FP1G44igVxPJIA,6225
6
+ bool_hybrid_array-9.11.7.dist-info/licenses/LICENSE,sha256=Sg4rnGXkBDYkwJCWyxdWp5H60rhVAxpNvFh_l3JWZdY,1070
7
+ bool_hybrid_array-9.11.7.dist-info/METADATA,sha256=Dsk-thuJ8y4ikh_JK2Ckht-ar5WhiwJow68-mLH_zL0,25858
8
+ bool_hybrid_array-9.11.7.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
9
+ bool_hybrid_array-9.11.7.dist-info/top_level.txt,sha256=vk-TD77wuVQsN1rJ6uVWZX4sC_wya_WplRDwQKJoBZM,18
10
+ bool_hybrid_array-9.11.7.dist-info/RECORD,,
@@ -1,10 +0,0 @@
1
- bool_hybrid_array/__init__.py,sha256=YIYlFVq3n1DKvqVwK5dzqUze8mJolyMk4AE0uPKueTM,1039
2
- bool_hybrid_array/__main__.py,sha256=pjoWN4Noa_K44fqQPqp8H-diKSDf0Da8hdWFgvWUigQ,9083
3
- bool_hybrid_array/core.py,sha256=AUFAN-Nlg8hSVafXI7CmFdDJ4i0xVuYiCnjhZqMas1E,40647
4
- bool_hybrid_array/秘密.md,sha256=Ii2NvXmv-Ktu04zJsGLcQZvlzT4gOatByE4B2wTK1Ks,48
5
- bool_hybrid_array/int_array/__init__.py,sha256=HPBdZu5qlXaRI4n_oK6WhnG4ml8H-FP1G44igVxPJIA,6225
6
- bool_hybrid_array-9.11.6.dist-info/licenses/LICENSE,sha256=Sg4rnGXkBDYkwJCWyxdWp5H60rhVAxpNvFh_l3JWZdY,1070
7
- bool_hybrid_array-9.11.6.dist-info/METADATA,sha256=khBRIgfaAZmSl7UUI6EwZs1qyHRu5AYz-15YurNQfUs,25787
8
- bool_hybrid_array-9.11.6.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
9
- bool_hybrid_array-9.11.6.dist-info/top_level.txt,sha256=vk-TD77wuVQsN1rJ6uVWZX4sC_wya_WplRDwQKJoBZM,18
10
- bool_hybrid_array-9.11.6.dist-info/RECORD,,