Мне нужно разобрать некоторые вызовы вызова метода, включая всю подпись из некоторых классов Java, например.Java-метод invocation parser?
public class MyClass {
public void myMthod() {
// ... some code here
result = someInstance.someOtherMethod(param1, param2);
// ... some other code here
}
}
В результате я хотел бы получить что-то вроде:
serviceName = someInstance
methodName = someOtherMethod
arguments = {
argument = java.lang.String,
argument = boolean
}
result = java.lang.Long
Что бы самый быстрый способ для достижения этой цели? Я думал об использовании парсера RegEx. Проблема в том, что существует несколько шаблонов вхождения, например.
a)
result = someInstance.someOtherMethod(getSomething(), param);
b)
result =
getSomeInstance().someOtherMethod(param);
c)
result = getSomeInstance()
.someOtherMethod(
getSomethingElse(), null, param);
Любая помощь была бы действительно оценена! Благодаря!
Из любопытства, в чем ваш прецедент? – lhballoti
Мне нужно сделать статический анализ исходного кода: мне нужно найти все вызовы методов определенного класса службы для выполнения проверки подлинности интерфейса. – Peter