(
self,
entity: AliasedClass[_O],
inspected: _InternalEntityType[_O],
selectable: FromClause,
name: Optional[str],
with_polymorphic_mappers: Optional[Sequence[Mapper[Any]]],
polymorphic_on: Optional[ColumnElement[Any]],
_base_alias: Optional[AliasedInsp[Any]],
_use_mapper_path: bool,
adapt_on_names: bool,
represents_outer_join: bool,
nest_adapters: bool,
)
| 937 | """ |
| 938 | |
| 939 | def __init__( |
| 940 | self, |
| 941 | entity: AliasedClass[_O], |
| 942 | inspected: _InternalEntityType[_O], |
| 943 | selectable: FromClause, |
| 944 | name: Optional[str], |
| 945 | with_polymorphic_mappers: Optional[Sequence[Mapper[Any]]], |
| 946 | polymorphic_on: Optional[ColumnElement[Any]], |
| 947 | _base_alias: Optional[AliasedInsp[Any]], |
| 948 | _use_mapper_path: bool, |
| 949 | adapt_on_names: bool, |
| 950 | represents_outer_join: bool, |
| 951 | nest_adapters: bool, |
| 952 | ): |
| 953 | mapped_class_or_ac = inspected.entity |
| 954 | mapper = inspected.mapper |
| 955 | |
| 956 | self._weak_entity = weakref.ref(entity) |
| 957 | self.mapper = mapper |
| 958 | self.selectable = self.persist_selectable = self.local_table = ( |
| 959 | selectable |
| 960 | ) |
| 961 | self.name = name |
| 962 | self.polymorphic_on = polymorphic_on |
| 963 | self._base_alias = weakref.ref(_base_alias or self) |
| 964 | self._use_mapper_path = _use_mapper_path |
| 965 | self.represents_outer_join = represents_outer_join |
| 966 | self._nest_adapters = nest_adapters |
| 967 | |
| 968 | if with_polymorphic_mappers: |
| 969 | self._is_with_polymorphic = True |
| 970 | self.with_polymorphic_mappers = with_polymorphic_mappers |
| 971 | self._with_polymorphic_entities = [] |
| 972 | for poly in self.with_polymorphic_mappers: |
| 973 | if poly is not mapper: |
| 974 | ent = AliasedClass( |
| 975 | poly.class_, |
| 976 | selectable, |
| 977 | base_alias=self, |
| 978 | adapt_on_names=adapt_on_names, |
| 979 | use_mapper_path=_use_mapper_path, |
| 980 | ) |
| 981 | |
| 982 | setattr(self.entity, poly.class_.__name__, ent) |
| 983 | self._with_polymorphic_entities.append(ent._aliased_insp) |
| 984 | |
| 985 | else: |
| 986 | self._is_with_polymorphic = False |
| 987 | self.with_polymorphic_mappers = [mapper] |
| 988 | |
| 989 | self._adapter = ORMAdapter( |
| 990 | _TraceAdaptRole.ALIASED_INSP, |
| 991 | mapper, |
| 992 | selectable=selectable, |
| 993 | equivalents=mapper._equivalent_columns, |
| 994 | adapt_on_names=adapt_on_names, |
| 995 | anonymize_labels=True, |
| 996 | # make sure the adapter doesn't try to grab other tables that |
no test coverage detected