RecordComponentVisitor (String name, String descriptor, String signature) { if (myHeaderStub == null) return null; boolean isEllipsis = myFirstPassData.isVarArgComponent(name); byte flags = PsiRecordComponentStubImpl.packFlags(isEllipsis, false); TypeInfo type = fieldType(descriptor, signature); if (isEllipsis) { type = type.withEllipsis(); } PsiRecordComponentStubImpl stub = new PsiRecordComponentStubImpl(myHeaderStub, name, type, flags); PsiModifierListStub modList = new PsiModifierListStubImpl(stub, 0); return new RecordComponentAnnotationCollectingVisitor(stub, modList, myFirstPassData); }