int (GroovyPsiElement place, int offset) { if (place instanceof GrArgumentList list) { int idx = (list.getNamedArguments().length > 0) ? 1 : 0; for (PsiElement child = list.getFirstChild(); child != null; child = child.getNextSibling()) { if (child.getTextRange().contains(offset)) { if (child instanceof GrNamedArgument) return 0; return idx; } if (child.getNode().getElementType() == GroovyTokenTypes.mCOMMA) idx++; if (isNamedArgWithPriorComma(child)) idx--; } } return -1; }