截断跟踪:改正不继承 list 的理由说明

This commit is contained in:
ThearchyHelios
2026-10-03 09:36:40 +08:00
parent 3e1f8b2591
commit b0c36b5880
+3 -2
View File
@@ -331,8 +331,9 @@ class TruncatedRows:
in、比较、拼接、转成文本、倒数第几行、取回的行之后的行号。按行号取取回范围之内的一行不记;
真假判断也不记——截断的结果至少有一行,「有数据」这件事是真的。
不继承 list:list 的 C 实现里有绕过子类方法的快路径(json 编码、[] + x 的 sq_concat 都直接读底层数组),
记漏一处就是把截断的数当成完整的出具。属性一律带下划线,表达式碰不到(私有属性在静态检查里就拒了)。
不继承 list:list 有一批 C 实现按 PyList_Check 直接读底层数组(拼接、比较……),子类得把每个反射方法都
补上才不漏记,漏一处就是把截断的数当成完整的出具。独立的类只认这里实现的几样,没实现的写法直接报类型
错误,不会悄悄在截断的数据上算出一个数。属性一律带下划线,表达式碰不到(私有属性在静态检查里就拒了)。
"""
__slots__ = ("_rows", "_use", "_path", "_count", "_artifact")