Iterate over tokens with a for instead of while

This simplifies the logic and avoids unnecessary copying/slicing of
array elements in `tokens`.

Signed-off-by: Enji Cooper <yaneurabeya@gmail.com>
This commit is contained in:
Enji Cooper 2020-03-26 20:42:40 -07:00
parent 5408b9636f
commit 7f115c17c0

View File

@ -1309,6 +1309,11 @@ def NormalizeLine(line):
return line
NAME_RE = re.compile(r"(?P<name>[^\[\]]+)(\[(?P<fixed_length>.*)\])?")
TAG_NUMBER_RE = re.compile(r"(0x)?\d+", re.I)
def ProcessOneEntry(factory, newstruct, entry):
optional = 0
array = 0
@ -1319,11 +1324,7 @@ def ProcessOneEntry(factory, newstruct, entry):
separator = ''
fixed_length = ''
tokens = entry.split(' ')
while tokens:
token = tokens[0]
tokens = tokens[1:]
for token in entry.split(" "):
if not entry_type:
if not optional and token == 'optional':
optional = 1