Get a list of sets of virtual ancestors for the given types
(*types)
| 346 | typemap = {} |
| 347 | |
| 348 | def vancestors(*types): |
| 349 | """ |
| 350 | Get a list of sets of virtual ancestors for the given types |
| 351 | """ |
| 352 | check(types) |
| 353 | ras = [[] for _ in range(len(dispatch_args))] |
| 354 | for types_ in typemap: |
| 355 | for t, type_, ra in zip(types, types_, ras): |
| 356 | if issubclass(t, type_) and type_ not in t.__mro__: |
| 357 | append(type_, ra) |
| 358 | return [set(ra) for ra in ras] |
| 359 | |
| 360 | def ancestors(*types): |
| 361 | """ |