(self, read_context, global_name)
| 1133 | return obj |
| 1134 | |
| 1135 | def _resolve_global_name(self, read_context, global_name): |
| 1136 | policy = read_context.policy |
| 1137 | if "." in global_name: |
| 1138 | module_name, obj_name = global_name.rsplit(".", 1) |
| 1139 | else: |
| 1140 | module_name, obj_name = "builtins", global_name |
| 1141 | try: |
| 1142 | obj = _resolve_validated_module_attr( |
| 1143 | policy, |
| 1144 | module_name, |
| 1145 | obj_name, |
| 1146 | is_local=_is_local_qualname(module_name, obj_name), |
| 1147 | ) |
| 1148 | except AttributeError: |
| 1149 | raise ValueError(f"Cannot resolve global name: {global_name}") |
| 1150 | return self._validate_global_object(policy, obj) |
| 1151 | |
| 1152 | def write(self, write_context, value): |
| 1153 | # Try __reduce_ex__ first (with protocol 5 for pickle5 out-of-band buffer support), then __reduce__ |
no test coverage detected