added support for error-throwing methods

This commit is contained in:
Jonas_Jones 2025-03-04 20:42:31 +01:00
parent 254a7a7dff
commit ff082abfe1

View file

@ -102,7 +102,7 @@ def is_line_method_declaration(line:str, class_type:str) -> bool:
method_pattern = re.compile(r'^\s*(public|private|protected|\s)*\s*(static|final|\s)*\s*(\w[\w\d]*)\s+(\w[\w\d]*)\s*\(.*\)\s*(?:throws\s+\w[\w\d]*)?\s*{')
if class_type == "interface":
method_pattern = re.compile(r'^[a-zA-Z_][a-zA-Z0-9_]*\s+[a-zA-Z_][a-zA-Z0-9_]*\(\)\s*;$')
method_pattern = re.compile(r'^[a-zA-Z_][a-zA-Z0-9_]*\s+[a-zA-Z_][a-zA-Z0-9_]*\(\)\s*(?:throws\s+\w[\w\d]*)?\s*;$')
match = method_pattern.match(line.strip())
return match is not None
@ -112,7 +112,7 @@ def get_method_visibility(line:str) -> str:
"""
Checks if the line is a method declaration and returns its visibility (+, -, or #).
"""
method_pattern = re.compile(r'^\s*(public|private|protected|\s)*\s*(static|final|\s)*\s*(\w[\w\d]*)\s+(\w[\w\d]*)\s*\(.*\)\s*{')
method_pattern = re.compile(r'^\s*(public|private|protected|\s)*\s*(static|final|\s)*\s*(\w[\w\d]*)\s+(\w[\w\d]*)\s*\(.*\)\s*(?:throws\s+\w[\w\d]*)?\s*{')
match = method_pattern.match(line.strip())
if match:
# Check for the access modifier in the line and return the corresponding symbol