(obj)
| 223 | |
| 224 | |
| 225 | def Freeze(obj): |
| 226 | if isinstance(obj, dict): |
| 227 | return FrozenDict((k, Freeze(v)) for k, v in list(obj.items())) |
| 228 | elif isinstance(obj, set): |
| 229 | return frozenset(obj) |
| 230 | elif isinstance(obj, list): |
| 231 | return tuple(Freeze(item) for item in obj) |
| 232 | else: |
| 233 | # Make sure object is hashable. |
| 234 | hash(obj) |
| 235 | return obj |