void (LighterASTTokenNode leaf, Integer offset) { LighterASTNode element = tree.getParent(leaf); if (element == null) return; if (element.getTokenType() == METHOD_REF_EXPRESSION || element.getTokenType() == LAMBDA_EXPRESSION) { FunctionalExpressionKey key = new FunctionalExpressionKey(getFunExprParameterCount(tree, element), calcReturnType(tree, element), calcExprType(element, resolver)); LighterASTNode context = LightTreeUtil.getParentOfType(tree, element, ElementType.MEMBER_BIT_SET, TokenSet.EMPTY); if (context != null) { List<IndexEntry> list = result.computeIfAbsent(key, __ -> new ArrayList<>()); list.add(new IndexEntry(element.getStartOffset(), index, context.getStartOffset(), context.getEndOffset(), createOccurrence(element, resolver))); } index++; } }