MCPcopy
hub / github.com/sqlalchemy/sqlalchemy / Serializer

Class Serializer

lib/sqlalchemy/ext/serializer.py:88–116  ·  lib/sqlalchemy/ext/serializer.py::Serializer

Source from the content-addressed store, hash-verified

86
87
88class Serializer(pickle.Pickler):
89
90 def persistent_id(self, obj):
91 class="cm"># print class="st">"serializing:", repr(obj)
92 if isinstance(obj, Mapper):
93 id_ = class="st">"mapper:" + b64encode(pickle.dumps(obj.class_))
94 elif isinstance(obj, MapperProperty):
95 id_ = (
96 class="st">"mapperprop:"
97 + b64encode(pickle.dumps(obj.parent.class_))
98 + class="st">":"
99 + obj.key
100 )
101 elif isinstance(obj, Table):
102 if class="st">"parententity" in obj._annotations:
103 id_ = class="st">"mapper_selectable:" + b64encode(
104 pickle.dumps(obj._annotations[class="st">"parententity"].class_)
105 )
106 else:
107 id_ = fclass="st">"table:{obj.key}"
108 elif isinstance(obj, Column) and isinstance(obj.table, Table):
109 id_ = fclass="st">"column:{obj.table.key}:{obj.key}"
110 elif isinstance(obj, Session):
111 id_ = class="st">"session:"
112 elif isinstance(obj, Engine):
113 id_ = class="st">"engine:"
114 else:
115 return None
116 return id_
117
118
119our_ids = re.compile(

Callers 1

dumpsFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected