(cls)
| 962 | classes = [] |
| 963 | |
| 964 | def get_classes(cls): |
| 965 | if cls not in classes and isinstance(cls, TopLevelDocumentMetaclass): |
| 966 | classes.append(cls) |
| 967 | |
| 968 | for base_cls in cls.__bases__: |
| 969 | if ( |
| 970 | isinstance(base_cls, TopLevelDocumentMetaclass) |
| 971 | and base_cls != Document |
| 972 | and not base_cls._meta.get("abstract") |
| 973 | and base_cls._get_collection().full_name |
| 974 | == cls._get_collection().full_name |
| 975 | and base_cls not in classes |
| 976 | ): |
| 977 | classes.append(base_cls) |
| 978 | get_classes(base_cls) |
| 979 | for subclass in cls.__subclasses__(): |
| 980 | if ( |
| 981 | isinstance(base_cls, TopLevelDocumentMetaclass) |
| 982 | and subclass._get_collection().full_name |
| 983 | == cls._get_collection().full_name |
| 984 | and subclass not in classes |
| 985 | ): |
| 986 | classes.append(subclass) |
| 987 | get_classes(subclass) |
| 988 | |
| 989 | get_classes(cls) |
| 990 |
nothing calls this directly
no test coverage detected