Match all instances of a certain relation.
(
name: str, g: gh.Graph
)
| 777 | |
| 778 | |
| 779 | def match_all( |
| 780 | name: str, g: gh.Graph |
| 781 | ) -> Generator[tuple[gm.Point, ...], None, None]: |
| 782 | """Match all instances of a certain relation.""" |
| 783 | if name in ['ncoll', 'npara', 'nperp']: |
| 784 | return [] |
| 785 | if name == 'coll': |
| 786 | return g.all_colls() |
| 787 | if name == 'para': |
| 788 | return g.all_paras() |
| 789 | if name == 'perp': |
| 790 | return g.all_perps() |
| 791 | if name == 'cong': |
| 792 | return g.all_congs() |
| 793 | if name == 'eqangle': |
| 794 | return g.all_eqangles_8points() |
| 795 | if name == 'eqangle6': |
| 796 | return g.all_eqangles_6points() |
| 797 | if name == 'eqratio': |
| 798 | return g.all_eqratios_8points() |
| 799 | if name == 'eqratio6': |
| 800 | return g.all_eqratios_6points() |
| 801 | if name == 'cyclic': |
| 802 | return g.all_cyclics() |
| 803 | if name == 'midp': |
| 804 | return g.all_midps() |
| 805 | if name == 'circle': |
| 806 | return g.all_circles() |
| 807 | raise ValueError(f'Unrecognize {name}') |
| 808 | |
| 809 | |
| 810 | def cache_match( |
no test coverage detected