Files
PJVM/pjvm/utils.py

12 lines
346 B
Python

from typing import List
import re
re_types = re.compile('([BCDFIJSZV]|L(?:[a-zA-Z0-9_]+/)+[a-zA-Z0-9_]+;)')
re_method_sig = re.compile(fr"\(({re_types.pattern}*)\){re_types.pattern}")
def get_argument_count_types_descriptor(descriptor: str) -> List[str]:
args = re_method_sig.search(descriptor).group(1)
return re_types.findall(args)