bool-hybrid-array 9.11.10__py3-none-any.whl → 9.11.11__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.
- bool_hybrid_array/__init__.py +1 -1
- bool_hybrid_array/_cppiostream.py +33 -14
- bool_hybrid_array/{compile_core.pyd → compile_core.cp314-win_amd64.pyd} +0 -0
- bool_hybrid_array/core.c +228 -228
- bool_hybrid_array/core.py +4 -4
- {bool_hybrid_array-9.11.10.dist-info → bool_hybrid_array-9.11.11.dist-info}/METADATA +6 -2
- bool_hybrid_array-9.11.11.dist-info/RECORD +14 -0
- {bool_hybrid_array-9.11.10.dist-info → bool_hybrid_array-9.11.11.dist-info}/WHEEL +1 -1
- bool_hybrid_array-9.11.10.dist-info/RECORD +0 -14
- {bool_hybrid_array-9.11.10.dist-info → bool_hybrid_array-9.11.11.dist-info}/licenses/LICENSE +0 -0
- {bool_hybrid_array-9.11.10.dist-info → bool_hybrid_array-9.11.11.dist-info}/top_level.txt +0 -0
bool_hybrid_array/core.py
CHANGED
|
@@ -70,7 +70,7 @@ class ResurrectMeta(abc.ABCMeta,metaclass=abc.ABCMeta):# type: ignore
|
|
|
70
70
|
try:
|
|
71
71
|
setattr(builtins,cls.name,cls)
|
|
72
72
|
if not sys.is_finalizing():
|
|
73
|
-
print(f'警告:禁止删除常变量:{cls}
|
|
73
|
+
print(f'\033[31m警告:禁止删除常变量:{cls}!\033[0m')
|
|
74
74
|
raise TypeError(f'禁止删除常变量:{cls}')
|
|
75
75
|
except NameError:pass
|
|
76
76
|
def __hash__(cls):
|
|
@@ -786,10 +786,10 @@ class ProtectedBuiltinsDict(dict,metaclass=ResurrectMeta):# type: ignore
|
|
|
786
786
|
if isinstance(current_T, BHA_bool) and isinstance(current_F, BHA_bool):
|
|
787
787
|
is_swap = (name == "T" and isinstance(value, BHA_bool) and value.value == current_F.value)or(name == "F" and isinstance(value, BHA_bool) and value.value == current_T.value)
|
|
788
788
|
if is_swap:
|
|
789
|
-
print(f"""警告:禁止交换内置常量 __{self.name}__["{name}"] 和 __builtins__["{'F' if name == 'T' else 'T'}"]
|
|
789
|
+
print(f"""\033[31m警告:禁止交换内置常量 __{self.name}__["{name}"] 和 __builtins__["{'F' if name == 'T' else 'T'}"]!\033[0m""")
|
|
790
790
|
raise AttributeError(f"""禁止交换内置常量 __{self.name}__["{name}"] 和 __{self.name}__["{'F' if name == 'T' else 'T'}"]""")
|
|
791
791
|
if name in self.protected_names and name not in ["T", "F"]:
|
|
792
|
-
print(f"警告:禁止修改内置常量 __{self.name}__['{name}']
|
|
792
|
+
print(f"\033[31m警告:禁止修改内置常量 __{self.name}__['{name}']!\033[0m")
|
|
793
793
|
raise AttributeError(f"禁止修改内置常量 __{self.name}__['{name}']")
|
|
794
794
|
except:
|
|
795
795
|
if sys.implementation.name == 'cpython':
|
|
@@ -797,7 +797,7 @@ class ProtectedBuiltinsDict(dict,metaclass=ResurrectMeta):# type: ignore
|
|
|
797
797
|
finally:super().__setitem__(name, value)
|
|
798
798
|
def __delitem__(self, name):
|
|
799
799
|
if name in self.protected_names:
|
|
800
|
-
print(f"警告:禁止删除内置常量 __builtins__['{name}']
|
|
800
|
+
print(f"\033[31m警告:禁止删除内置常量 __builtins__['{name}']!\033[0m")
|
|
801
801
|
raise AttributeError(f"禁止删除内置常量 __builtins__['{name}']")
|
|
802
802
|
if name in self:
|
|
803
803
|
super().__delitem__(name)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: bool-hybrid-array
|
|
3
|
-
Version: 9.11.
|
|
3
|
+
Version: 9.11.11
|
|
4
4
|
Summary: 一个高效的布尔数组(密集+稀疏混合存储,节省内存)
|
|
5
5
|
Home-page: https://github.com/BKsell/bool-hybrid-array
|
|
6
6
|
Author: 蔡靖杰
|
|
@@ -9,6 +9,8 @@ Project-URL: GitHub 主站, https://github.com/BKsell/bool-hybrid-array
|
|
|
9
9
|
Project-URL: GitHub 中文镜像, https://www.github-zh.com/projects/1083175506-bool-hybrid-array
|
|
10
10
|
Project-URL: Issue 反馈(主站), https://github.com/BKsell/bool-hybrid-array/issues
|
|
11
11
|
Keywords: boolean array,compact storage
|
|
12
|
+
Classifier: Programming Language :: Cython
|
|
13
|
+
Classifier: Programming Language :: Python
|
|
12
14
|
Classifier: Programming Language :: Python :: 3
|
|
13
15
|
Classifier: Programming Language :: Python :: 3.8
|
|
14
16
|
Classifier: Programming Language :: Python :: 3.9
|
|
@@ -29,6 +31,8 @@ Requires-Dist: numpy>=1.19.0
|
|
|
29
31
|
Provides-Extra: int-array
|
|
30
32
|
Provides-Extra: numba-opt
|
|
31
33
|
Requires-Dist: numba>=0.55.0; extra == "numba-opt"
|
|
34
|
+
Provides-Extra: cython-opt
|
|
35
|
+
Requires-Dist: cython>=3.2.4; extra == "cython-opt"
|
|
32
36
|
Dynamic: author
|
|
33
37
|
Dynamic: author-email
|
|
34
38
|
Dynamic: classifier
|
|
@@ -616,7 +620,7 @@ print(f"出队2个元素后: {q}") # 输出:BHA_Queue([T,T,F,T,F])
|
|
|
616
620
|
* **9.11.8**:增加了Windows系统Python3.14的C扩展优化
|
|
617
621
|
* **9.11.9**:修复BHA_Queue的bug,新增cin和cout(使用方式:a = ctypes.c_int();cin >> a;cout << a,支持各种ctypes类型、numpy标量)
|
|
618
622
|
* **9.11.10**:修复cin的AttributeError的错误
|
|
619
|
-
|
|
623
|
+
* **9.11.11**:新增cin对EOF的处理
|
|
620
624
|
|
|
621
625
|
|
|
622
626
|
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
bool_hybrid_array/__init__.py,sha256=r7hGlbJiOFmS9NisOL0YR4oNN09aQ2p-suxxXXxawOY,1086
|
|
2
|
+
bool_hybrid_array/__main__.py,sha256=uFyebfsZl1tW54AVcc6IDhk36BglTGb_Vw3Djx8pq00,8987
|
|
3
|
+
bool_hybrid_array/_cppiostream.py,sha256=1i973ag_8XgivQkeIbqzHivflcQkVFtX77R_UwChSAg,9205
|
|
4
|
+
bool_hybrid_array/compile_core.cp314-win_amd64.pyd,sha256=LbC9PHoXLjtBBCvI_Xipvly8d3ojE32iwfQH6FFbzNU,556544
|
|
5
|
+
bool_hybrid_array/core.c,sha256=om2tuMhsXPLtmFAcJpY-VnZcwVJ2sZrYEPWPsdtEs4M,3230975
|
|
6
|
+
bool_hybrid_array/core.py,sha256=nrmu8djPZS3Y70wRa_QkeM-5v-LGLUkuSZiw__OFU-M,42091
|
|
7
|
+
bool_hybrid_array/秘密.md,sha256=Ii2NvXmv-Ktu04zJsGLcQZvlzT4gOatByE4B2wTK1Ks,48
|
|
8
|
+
bool_hybrid_array/int_array/__init__.py,sha256=CCKDUL5GBAXOprc9FhtLNL_rP4IDhvGVWJ-Dporp6YI,112
|
|
9
|
+
bool_hybrid_array/int_array/core.py,sha256=hnXHSLabtbDCnO3JX0M5tsF0BWlQpjWKu7RplMx7i8A,6236
|
|
10
|
+
bool_hybrid_array-9.11.11.dist-info/licenses/LICENSE,sha256=Sg4rnGXkBDYkwJCWyxdWp5H60rhVAxpNvFh_l3JWZdY,1070
|
|
11
|
+
bool_hybrid_array-9.11.11.dist-info/METADATA,sha256=_Rdoe4mYyGIPdto54vfro-n6vhVnQSMhRqaNyxv-b4c,26342
|
|
12
|
+
bool_hybrid_array-9.11.11.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
|
|
13
|
+
bool_hybrid_array-9.11.11.dist-info/top_level.txt,sha256=vk-TD77wuVQsN1rJ6uVWZX4sC_wya_WplRDwQKJoBZM,18
|
|
14
|
+
bool_hybrid_array-9.11.11.dist-info/RECORD,,
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
bool_hybrid_array/__init__.py,sha256=KzXCj4pevLEmZMp789nBkklGWOVGVy7iUohoA3cxhL8,1078
|
|
2
|
-
bool_hybrid_array/__main__.py,sha256=uFyebfsZl1tW54AVcc6IDhk36BglTGb_Vw3Djx8pq00,8987
|
|
3
|
-
bool_hybrid_array/_cppiostream.py,sha256=uisSGktor52VFxhTcMN011RtzuUE8O1Fgz2VltnPi3c,8447
|
|
4
|
-
bool_hybrid_array/compile_core.pyd,sha256=_bSaBSVM8x_fkxdP_-4AiIYWVEkTgV3DWCPXzP-i-00,556544
|
|
5
|
-
bool_hybrid_array/core.c,sha256=6jlDe0FTZweoWtfhabEQMOk7kfwaiPFDoe0yYPCMpS8,3230449
|
|
6
|
-
bool_hybrid_array/core.py,sha256=nv-veRvbioLefXCe66Py1avxb7_8OZbT5CeyQm-ErQE,42031
|
|
7
|
-
bool_hybrid_array/秘密.md,sha256=Ii2NvXmv-Ktu04zJsGLcQZvlzT4gOatByE4B2wTK1Ks,48
|
|
8
|
-
bool_hybrid_array/int_array/__init__.py,sha256=CCKDUL5GBAXOprc9FhtLNL_rP4IDhvGVWJ-Dporp6YI,112
|
|
9
|
-
bool_hybrid_array/int_array/core.py,sha256=hnXHSLabtbDCnO3JX0M5tsF0BWlQpjWKu7RplMx7i8A,6236
|
|
10
|
-
bool_hybrid_array-9.11.10.dist-info/licenses/LICENSE,sha256=Sg4rnGXkBDYkwJCWyxdWp5H60rhVAxpNvFh_l3JWZdY,1070
|
|
11
|
-
bool_hybrid_array-9.11.10.dist-info/METADATA,sha256=kmw6K6GnXPoBGWxeNaZ8Rm4HGPdjWwqIsw3WgP2gkM8,26133
|
|
12
|
-
bool_hybrid_array-9.11.10.dist-info/WHEEL,sha256=qELbo2s1Yzl39ZmrAibXA2jjPLUYfnVhUNTlyF1rq0Y,92
|
|
13
|
-
bool_hybrid_array-9.11.10.dist-info/top_level.txt,sha256=vk-TD77wuVQsN1rJ6uVWZX4sC_wya_WplRDwQKJoBZM,18
|
|
14
|
-
bool_hybrid_array-9.11.10.dist-info/RECORD,,
|
{bool_hybrid_array-9.11.10.dist-info → bool_hybrid_array-9.11.11.dist-info}/licenses/LICENSE
RENAMED
|
File without changes
|
|
File without changes
|