1
0
Fork 0

Formatting

This commit is contained in:
Jon Michael Aanes 2024-02-29 13:35:12 +01:00
parent 60e26aa2e4
commit 40e9e7575b
1 changed files with 30 additions and 17 deletions

47
main.py
View File

@ -1,4 +1,3 @@
import re
import subprocess
import argparse
@ -6,28 +5,36 @@ import argparse
parser = argparse.ArgumentParser()
parser.add_argument('project')
RULES_MAIN= [
r"\b(System\.out\.println)\b",
RULES_MAIN = [
r"\b(System\.out\.println)\b",
r"^\s*var\b\s*\w*\s*=\s*[^n ][^e][^w]",
r"^\s*var\b\s*\w*\s*=\s*\r",
]
DUMB_WORDS = [
'derp', 'herp', 'fjerp', 'todo', 'attempts to',
'actual', 'technically', 'so',
'derp',
'herp',
'fjerp',
'todo',
'attempts to',
'actual',
'technically',
'so',
"big integer",
"big integer",
# Misspelled words
'concatinate', # Concatenate
# Misspelled words
'concatinate', # Concatenate
]
def re_select(options):
return r'(?:' + r'|'.join(options) + r')'
def re_delimit(rule):
return r'\b' + rule + r'\b'
def re_case_insensitive_sub(m):
m = m.group(0)
l = m.lower()
@ -35,33 +42,38 @@ def re_case_insensitive_sub(m):
if l == u == m:
return m
else:
return '['+l+u+']'
return '[' + l + u + ']'
def re_case_insensitive(rule):
return re.sub(r'\w', re_case_insensitive_sub, rule)
def re_sentence(sentence):
words = sentence.split(' ')
re = '\s+'.join(re_case_insensitive(w) for w in words)
return re
RE_DOC_COULD_BE_LINK = r'^(\s*(?:\/\*\*|\*).*)(\b[A-Z][a-z]\w*[A-Z]\w*)([ ,.])'
RULES_BOTH = [
r"\.size\(\)\s*[=!<]=\s*0" ,
r"\b(hasSize\(0\))\b" ,
r"\b(\.size\(\)\)\.isEqualTo\()\b" ,
r"\.get\([^)(]+\)\)\.isEqualTo",
r"\.isEqualTo\((List|Map|Set)\.of\(",
r"\bCollectors\.toMap\b",
r"\bCollectors\.toList\b",
r"\.size\(\)\s*[=!<]=\s*0",
r"\b(hasSize\(0\))\b",
r"\b(\.size\(\)\)\.isEqualTo\()\b",
r"\.get\([^)(]+\)\)\.isEqualTo",
r"\.isEqualTo\((List|Map|Set)\.of\(",
r"\bCollectors\.toMap\b",
r"\bCollectors\.toList\b",
re_delimit(re_select([re_sentence(w) for w in DUMB_WORDS])),
#RE_DOC_COULD_BE_LINK,
]
def construct_cmd(rules: list[str], target: str) -> list[str]:
return ['ag', '--java', '(' + re_select(rules) + ')', target]
def main():
args = parser.parse_args()
@ -73,5 +85,6 @@ def main():
if result1.returncode == 0 or result2.returncode == 0:
exit(1)
if __name__ == '__main__':
main()