mirror of
https://codeberg.org/Bazsalanszky/Infinity-For-Lemmy.git
synced 2024-11-14 14:32:49 +01:00
33 lines
1.0 KiB
Python
33 lines
1.0 KiB
Python
|
import re
|
||
|
import sys
|
||
|
|
||
|
|
||
|
def rearrange(filename):
|
||
|
with open(filename, 'r') as file:
|
||
|
content = file.read()
|
||
|
|
||
|
# Regex to find the blocks of code to rearrange
|
||
|
pattern = re.compile(r'(putIndex\(new SimpleSubscriberInfo\(.*?\)\);)', re.DOTALL)
|
||
|
blocks = pattern.findall(content)
|
||
|
|
||
|
# Sort blocks based on the class names mentioned in SimpleSubscriberInfo instances
|
||
|
sorted_blocks = sorted(blocks, key=lambda x: re.search(r'SimpleSubscriberInfo\((.*?),', x).group(1))
|
||
|
|
||
|
# Replace the original blocks with the sorted blocks
|
||
|
sorted_content = pattern.sub(lambda match: sorted_blocks.pop(0), content)
|
||
|
|
||
|
with open(filename, 'w') as file:
|
||
|
file.write(sorted_content)
|
||
|
|
||
|
|
||
|
# Project root relative to the script
|
||
|
project_root = __file__[:-len('/scripts/fixEventBus.py')]
|
||
|
|
||
|
path = './build/generated/ap_generated_sources/release/out/eu/toldi/infinityforlemmy/EventBusIndex.java'
|
||
|
|
||
|
# Print the path to the file to stderr
|
||
|
print(path, file=sys.stderr)
|
||
|
|
||
|
# Call the function with the path to EventBusIndex.java
|
||
|
rearrange(path)
|