(self, attr, val)
| 505 | return v |
| 506 | |
| 507 | def setfieldval(self, attr, val): |
| 508 | # type: (str, Any) -> None |
| 509 | if self.deprecated_fields and attr in self.deprecated_fields: |
| 510 | attr = self._resolve_alias(attr) |
| 511 | if attr in self.default_fields: |
| 512 | fld = self.get_field(attr) |
| 513 | if fld is None: |
| 514 | any2i = lambda x, y: y # type: Callable[..., Any] |
| 515 | else: |
| 516 | any2i = fld.any2i |
| 517 | self.fields[attr] = val if isinstance(val, RawVal) else \ |
| 518 | any2i(self, val) |
| 519 | self.explicit = 0 |
| 520 | self.raw_packet_cache = None |
| 521 | self.raw_packet_cache_fields = None |
| 522 | self.wirelen = None |
| 523 | elif attr == "payload": |
| 524 | self.remove_payload() |
| 525 | self.add_payload(val) |
| 526 | else: |
| 527 | self.payload.setfieldval(attr, val) |
| 528 | |
| 529 | def __setattr__(self, attr, val): |
| 530 | # type: (str, Any) -> None |
no test coverage detected