office-gobmx/bin/find-unused-typedefs.py
Noel Grandin 9a45305163 remove some unused typedefs
Change-Id: I305086e26538110481918f8250a482e4738ac41f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94729
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-05-24 10:19:26 +02:00

34 lines
1 KiB
Python
Executable file

#!/usr/bin/python2
import subprocess
# find typedefs, excluding the externals folder
a = subprocess.Popen("git grep -P 'typedef\s+.+\s+\w+;' -- \"[!e][!x][!t]*\"", stdout=subprocess.PIPE, shell=True)
# parse out the typedef names
typedefSet = set()
with a.stdout as txt:
for line in txt:
idx2 = line.rfind(";")
idx1 = line.rfind(" ", 0, idx2)
typedefName = line[idx1+1 : idx2]
if typedefName.startswith("*"):
typedefName = typedefName[1:]
# ignore anything less than 5 characters, it's probably a parsing error
if len(typedefName) < 5: continue
typedefSet.add(typedefName)
for typedefName in sorted(typedefSet):
print("checking: " + typedefName)
a = subprocess.Popen(["git", "grep", "-wn", typedefName], stdout=subprocess.PIPE)
foundLine2 = ""
cnt = 0
with a.stdout as txt2:
for line2 in txt2:
cnt = cnt + 1
foundLine2 += line2
if cnt == 1:
print("remove: " + foundLine2)
elif cnt == 2:
print("inline: " + foundLine2)