(cls, name, val)
| 1541 | """ |
| 1542 | |
| 1543 | def __new__(cls, name, val): |
| 1544 | # Lookup actual (derived) class to instantiate |
| 1545 | type_id = int(deref(val['type'])['id_']) |
| 1546 | type_class = lookup_type_class(type_id) |
| 1547 | if type_class is not None: |
| 1548 | cls = type_class.array_data_printer |
| 1549 | assert issubclass(cls, ArrayDataPrinter) |
| 1550 | self = object.__new__(cls) |
| 1551 | self.name = name |
| 1552 | self.val = val |
| 1553 | self.type_class = type_class |
| 1554 | self.type_name = type_class.name |
| 1555 | self.type_id = type_id |
| 1556 | self.offset = int(self.val['offset']) |
| 1557 | self.length = int(self.val['length']) |
| 1558 | return self |
| 1559 | |
| 1560 | @property |
| 1561 | def type(self): |
nothing calls this directly
no test coverage detected