Buckets:
ktongue/docker_container / simsite /venv /lib /python3.14 /site-packages /fontTools /ttLib /ttVisitor.py
| """Specialization of fontTools.misc.visitor to work with TTFont.""" | |
| from fontTools.misc.visitor import Visitor | |
| from fontTools.ttLib import TTFont | |
| class TTVisitor(Visitor): | |
| def visitAttr(self, obj, attr, value, *args, **kwargs): | |
| if isinstance(value, TTFont): | |
| return False | |
| super().visitAttr(obj, attr, value, *args, **kwargs) | |
| def visit(self, obj, *args, **kwargs): | |
| if hasattr(obj, "ensureDecompiled"): | |
| obj.ensureDecompiled(recurse=False) | |
| super().visit(obj, *args, **kwargs) | |
| def visit(visitor, font, *args, **kwargs): | |
| # Some objects have links back to TTFont; even though we | |
| # have a check in visitAttr to stop them from recursing | |
| # onto TTFont, sometimes they still do, for example when | |
| # someone overrides visitAttr. | |
| if hasattr(visitor, "font"): | |
| return False | |
| visitor.font = font | |
| for tag in font.keys(): | |
| visitor.visit(font[tag], *args, **kwargs) | |
| del visitor.font | |
| return False | |
Xet Storage Details
- Size:
- 1.03 kB
- Xet hash:
- 106d7b0f3b16d11fab92125cba0fdad4843ebdbf27f512ce9a573173ae050367
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.