import t from t import CInt # ============================================================ # Cross-module isinstance test library: classes defined here are imported by # main.vp to verify vtable comparison resolves across object files. # ============================================================ @t.CVTable class Shape: def area(self) -> CInt: return 0 @t.CVTable class Circle(Shape): r: CInt def __init__(self, r: CInt): self.r = r def area(self) -> CInt: return self.r @t.CVTable class Square(Shape): s: CInt def __init__(self, s: CInt): self.s = s def area(self) -> CInt: return self.s @t.NoVTable class PlainShape: tag: CInt