Skip to content

Commit e1ed206

Browse files
authored
Update analyzer.py
1 parent 34d84f2 commit e1ed206

File tree

1 file changed

+22
-11
lines changed

1 file changed

+22
-11
lines changed

tools/analyzer.py

+22-11
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,26 @@
11
# analyzer.py
2+
import time, gc
23

34
def analyze_payload(payload):
45
tokens = []
5-
i = 0
6-
while i < len(payload):
7-
if payload[i] == "<":
8-
end_index = payload.find(">", i)
9-
if end_index != -1 and ' ' not in payload[i+1:end_index]:
10-
tokens.append(payload[i:end_index+1])
11-
i = end_index + 1
12-
continue
13-
tokens.append(payload[i])
14-
i += 1
15-
return tokens
6+
token_start = 0
7+
in_token = False
8+
9+
for i, char in enumerate(payload):
10+
if char == "<":
11+
if in_token:
12+
tokens.append(payload[token_start:i])
13+
token_start = i
14+
in_token = True
15+
elif char == ">" and in_token:
16+
tokens.append(payload[token_start:i+1])
17+
in_token = False
18+
token_start = i + 1
19+
elif not in_token and (i == len(payload) - 1 or payload[i+1] == "<"):
20+
tokens.append(payload[token_start:i+1])
21+
token_start = i + 1
22+
23+
if not in_token and token_start < len(payload):
24+
tokens.append(payload[token_start:])
25+
26+
return tokens

0 commit comments

Comments
 (0)