MCPcopy
hub / github.com/sqlalchemy/sqlalchemy / presort_saves

Method presort_saves

lib/sqlalchemy/orm/dependency.py:770–789  ·  view source on GitHub ↗
(self, uowcommit, states)

Source from the content-addressed store, hash-verified

768 uowcommit.register_object(st_, isdelete=True)
769
770 def presort_saves(self, uowcommit, states):
771 for state in states:
772 uowcommit.register_object(state, operation="add", prop=self.prop)
773 if self.cascade.delete_orphan:
774 history = uowcommit.get_attribute_history(
775 state, self.key, self._passive_delete_flag
776 )
777 if history:
778 for child in history.deleted:
779 if self.hasparent(child) is False:
780 uowcommit.register_object(
781 child,
782 isdelete=True,
783 operation="delete",
784 prop=self.prop,
785 )
786
787 t = self.mapper.cascade_iterator("delete", child)
788 for c, m, st_, dct_ in t:
789 uowcommit.register_object(st_, isdelete=True)
790
791 def process_deletes(self, uowcommit, states):
792 if (

Callers

nothing calls this directly

Calls 4

register_objectMethod · 0.80
get_attribute_historyMethod · 0.80
hasparentMethod · 0.45
cascade_iteratorMethod · 0.45

Tested by

no test coverage detected