blob: 53ac296ddbf46382d6c1fd8c04a7dedb01531042 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
from dataclasses import dataclass, field
@dataclass
class Identifier:
prefix: str
addr: int
name: str
override_name: str = field(default=None, repr=False)
is_name_safe: bool = field(default=False, repr=False)
@property
def label(self):
if self.override_name:
return self.override_name
if self.name and self.is_name_safe:
return self.name
return "%s_%08X" % (self.prefix, self.addr)
@property
def reference(self):
return self.label
def __repr__(self):
return f"Identifier({self.prefix}_{self.addr:08X},{self.name})"
|