"""Guppy standard module for dyadic rational angles."""# mypy: disable-error-code="empty-body, misc, override, operator"importmathfromtypingimportno_type_checkfromhugrimportvalashvfromhugr.std.floatimportFloatValfromguppylang.decoratorimportguppyfromguppylang.std.builtinsimportpy
[docs]@guppy.structclassangle:"""Not an angle in the truest sense but a rotation by a number of half-turns (does not wrap or identify with itself modulo any number of complete turns). """halfturns:float