ReflectiveSignature (PsiExpression @NotNull [] arguments) { if (arguments.length == 2) { final PsiExpression returnType = findDefinition(arguments[0]); if (returnType != null) { final PsiExpression array = arguments[1]; final List<PsiExpression> components = getVarargs(array); if (components != null) { final List<PsiExpression> signature = ContainerUtil.prepend(components, returnType); return ReflectiveSignature.create(ContainerUtil.map(signature, typeExpression -> getTypeText(typeExpression))); } } } return null; }