(self, **changes)
| 263 | ) |
| 264 | |
| 265 | def evolve(self, **changes): |
| 266 | cls = self.__class__ |
| 267 | schema = changes.setdefault("schema", self.schema) |
| 268 | NewValidator = validator_for(schema, default=cls) |
| 269 | |
| 270 | for field in fields(cls): # noqa: F402 |
| 271 | if not field.init: |
| 272 | continue |
| 273 | attr_name = field.name |
| 274 | init_name = field.alias |
| 275 | if init_name not in changes: |
| 276 | changes[init_name] = getattr(self, attr_name) |
| 277 | |
| 278 | return NewValidator(**changes) |
| 279 | |
| 280 | cls.evolve = evolve |
| 281 |
no test coverage detected