mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-01-08 15:09:39 +07:00
simplify
GitOrigin-RevId: 06a747f28150de97526c2fcb33b91456138e4b5a
This commit is contained in:
committed by
intellij-monorepo-bot
parent
ee66a76ea3
commit
e0f127364b
@@ -611,7 +611,7 @@ final class JvmClassAnalyzer {
|
||||
@Override
|
||||
public void visitInvokeDynamicInsn(String methodName, String desc, Handle bsm, Object... bsmArgs) {
|
||||
final Type returnType = Type.getReturnType(desc);
|
||||
addClassUsage(TypeRepr.getType(returnType));
|
||||
Iterators.collect(TypeRepr.getType(returnType).getUsages(), myUsages);
|
||||
|
||||
// common args processing
|
||||
for (Object arg : bsmArgs) {
|
||||
@@ -619,12 +619,12 @@ final class JvmClassAnalyzer {
|
||||
final Type type = (Type)arg;
|
||||
if (type.getSort() == Type.METHOD) {
|
||||
for (Type argType : type.getArgumentTypes()) {
|
||||
addClassUsage(TypeRepr.getType(argType));
|
||||
Iterators.collect(TypeRepr.getType(argType).getUsages(), myUsages);
|
||||
}
|
||||
addClassUsage(TypeRepr.getType(type.getReturnType()));
|
||||
Iterators.collect(TypeRepr.getType(type.getReturnType()).getUsages(), myUsages);
|
||||
}
|
||||
else {
|
||||
addClassUsage(TypeRepr.getType(type));
|
||||
Iterators.collect(TypeRepr.getType(type).getUsages(), myUsages);
|
||||
}
|
||||
}
|
||||
else if (arg instanceof Handle) {
|
||||
@@ -678,7 +678,7 @@ final class JvmClassAnalyzer {
|
||||
myUsages.add(new FieldAssignUsage(owner, fName, desc));
|
||||
}
|
||||
if (opcode == Opcodes.GETFIELD || opcode == Opcodes.GETSTATIC) {
|
||||
addClassUsage(TypeRepr.getType(desc));
|
||||
Iterators.collect(TypeRepr.getType(desc).getUsages(), myUsages);
|
||||
}
|
||||
myUsages.add(new FieldUsage(owner, fName, desc));
|
||||
}
|
||||
@@ -687,7 +687,7 @@ final class JvmClassAnalyzer {
|
||||
//myUsages.add(UsageRepr.createMetaMethodUsage(myContext, methodName, methodOwner));
|
||||
if (desc != null) {
|
||||
myUsages.add(new MethodUsage(owner, name, desc));
|
||||
addClassUsage(TypeRepr.getType(Type.getReturnType(desc)));
|
||||
Iterators.collect(TypeRepr.getType(Type.getReturnType(desc)).getUsages(), myUsages);
|
||||
}
|
||||
else {
|
||||
// todo: verify for which methods null descriptor is passed
|
||||
@@ -695,22 +695,6 @@ final class JvmClassAnalyzer {
|
||||
}
|
||||
}
|
||||
|
||||
private void addClassUsage(final TypeRepr type) {
|
||||
TypeRepr.ClassType classType = null;
|
||||
if (type instanceof TypeRepr.ClassType) {
|
||||
classType = (TypeRepr.ClassType)type;
|
||||
}
|
||||
else if (type instanceof TypeRepr.ArrayType) {
|
||||
final TypeRepr elemType = ((TypeRepr.ArrayType)type).getDeepElementType();
|
||||
if (elemType instanceof TypeRepr.ClassType) {
|
||||
classType = (TypeRepr.ClassType)elemType;
|
||||
}
|
||||
}
|
||||
if (classType != null) {
|
||||
myUsages.add(new ClassUsage(classType.getJvmName()));
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user