|
9 | 9 | """ |
10 | 10 | import re |
11 | 11 | from typing import List, Tuple, Union |
12 | | -from hsd.common import HSD_ATTRIB_NAME, np, ATTRIB_SUFFIX, HSD_ATTRIB_SUFFIX, HsdError,\ |
13 | | - QUOTING_CHARS, SPECIAL_CHARS |
| 12 | +from hsd.common import HSD_ATTRIB_NAME, np, HsdError, QUOTING_CHARS, SPECIAL_CHARS |
14 | 13 | from hsd.eventhandler import HsdEventHandler, HsdEventPrinter |
15 | 14 |
|
| 15 | + |
| 16 | +# Dictionary key suffix to mark attribute |
| 17 | +ATTRIB_KEY_SUFFIX = ".attrib" |
| 18 | + |
| 19 | +# Dictionary keysuffix to mark hsd processing attributes |
| 20 | +HSD_ATTRIB_KEY_SUFFIX = ".hsdattrib" |
| 21 | + |
| 22 | + |
16 | 23 | _ItemType = Union[float, complex, int, bool, str] |
17 | 24 |
|
18 | 25 | _DataType = Union[_ItemType, List[_ItemType]] |
@@ -130,26 +137,26 @@ def close_tag(self, tagname): |
130 | 137 | parentblock[key] = [{None: prevcont}, self._curblock] |
131 | 138 |
|
132 | 139 | if attrib and prevcont is None: |
133 | | - parentblock[key + ATTRIB_SUFFIX] = attrib |
| 140 | + parentblock[key + ATTRIB_KEY_SUFFIX] = attrib |
134 | 141 | elif prevcont is not None: |
135 | | - prevattrib = parentblock.get(key + ATTRIB_SUFFIX) |
| 142 | + prevattrib = parentblock.get(key + ATTRIB_KEY_SUFFIX) |
136 | 143 | if isinstance(prevattrib, list): |
137 | 144 | prevattrib.append(attrib) |
138 | 145 | else: |
139 | | - parentblock[key + ATTRIB_SUFFIX] = [prevattrib, attrib] |
| 146 | + parentblock[key + ATTRIB_KEY_SUFFIX] = [prevattrib, attrib] |
140 | 147 |
|
141 | 148 | if self._include_hsd_attribs: |
142 | 149 | if self._lower_tag_names: |
143 | 150 | hsdattrib = {} if hsdattrib is None else hsdattrib |
144 | 151 | hsdattrib[HSD_ATTRIB_NAME] = tagname |
145 | 152 | if prevcont is None: |
146 | | - parentblock[key + HSD_ATTRIB_SUFFIX] = hsdattrib |
| 153 | + parentblock[key + HSD_ATTRIB_KEY_SUFFIX] = hsdattrib |
147 | 154 | else: |
148 | | - prevhsdattrib = parentblock.get(key + HSD_ATTRIB_SUFFIX) |
| 155 | + prevhsdattrib = parentblock.get(key + HSD_ATTRIB_KEY_SUFFIX) |
149 | 156 | if isinstance(prevhsdattrib, list): |
150 | 157 | prevhsdattrib.append(hsdattrib) |
151 | 158 | else: |
152 | | - parentblock[key + HSD_ATTRIB_SUFFIX] = [prevhsdattrib, hsdattrib] |
| 159 | + parentblock[key + HSD_ATTRIB_KEY_SUFFIX] = [prevhsdattrib, hsdattrib] |
153 | 160 | self._curblock = parentblock |
154 | 161 | self._data = None |
155 | 162 |
|
@@ -219,11 +226,11 @@ def walk(self, dictobj): |
219 | 226 |
|
220 | 227 | for key, value in dictobj.items(): |
221 | 228 |
|
222 | | - if key.endswith(ATTRIB_SUFFIX) or key.endswith(HSD_ATTRIB_SUFFIX): |
| 229 | + if key.endswith(ATTRIB_KEY_SUFFIX) or key.endswith(HSD_ATTRIB_KEY_SUFFIX): |
223 | 230 | continue |
224 | 231 |
|
225 | | - hsdattrib = dictobj.get(key + HSD_ATTRIB_SUFFIX) |
226 | | - attrib = dictobj.get(key + ATTRIB_SUFFIX) |
| 232 | + hsdattrib = dictobj.get(key + HSD_ATTRIB_KEY_SUFFIX) |
| 233 | + attrib = dictobj.get(key + ATTRIB_KEY_SUFFIX) |
227 | 234 |
|
228 | 235 | if isinstance(value, dict): |
229 | 236 |
|
|
0 commit comments