MCPcopy Create free account
hub / github.com/sqlalchemy/sqlalchemy / _should_selectin_load

Method _should_selectin_load

lib/sqlalchemy/orm/mapper.py:3804–3824  ·  view source on GitHub ↗
(self, enabled_via_opt, polymorphic_from)

Source from the content-addressed store, hash-verified

3802 return retval
3803
3804 def _should_selectin_load(self, enabled_via_opt, polymorphic_from):
3805 if not enabled_via_opt:
3806 # common case, takes place for all polymorphic loads
3807 mapper = polymorphic_from
3808 for m in self._iterate_to_target_viawpoly(mapper):
3809 if m.polymorphic_load == "selectin":
3810 return m
3811 else:
3812 # uncommon case, selectin load options were used
3813 enabled_via_opt = set(enabled_via_opt)
3814 enabled_via_opt_mappers = {e.mapper: e for e in enabled_via_opt}
3815 for entity in enabled_via_opt.union([polymorphic_from]):
3816 mapper = entity.mapper
3817 for m in self._iterate_to_target_viawpoly(mapper):
3818 if (
3819 m.polymorphic_load == "selectin"
3820 or m in enabled_via_opt_mappers
3821 ):
3822 return enabled_via_opt_mappers.get(m, m)
3823
3824 return None
3825
3826 @util.preload_module("sqlalchemy.orm.strategy_options")
3827 def _subclass_load_via_in(self, entity, polymorphic_from):

Callers 1

_instance_processorFunction · 0.80

Calls 3

unionMethod · 0.45
getMethod · 0.45

Tested by

no test coverage detected