enriquepiatti / Magicento

PHPStorm plugin for Magento developers
115 stars 35 forks source link

[Magicento 3.3.6] com.intellij.diagnostic.PluginException: TypeProvider contract violation? by class com.magicento.extensions.FactoryTypeProvider3 on self:: #329

Closed pquerner closed 1 year ago

pquerner commented 1 year ago

Magicento 3.3.6 with Phpstorm 2023.1

com.intellij.diagnostic.PluginException: TypeProvider contract violation? by class com.magicento.extensions.FactoryTypeProvider3 on self:: [Plugin: Magicento]
    at com.intellij.diagnostic.PluginProblemReporterImpl.createPluginExceptionByClass(PluginProblemReporterImpl.java:23)
    at com.intellij.diagnostic.PluginException.createByClass(PluginException.java:89)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.lambda$getTypeFromAST$1(PhpTypeInfo.java:118)
    at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:112)
    at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:42)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getTypeFromAST(PhpTypeInfo.java:80)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getTypeCached(PhpTypeInfo.java:63)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getType(PhpTypeInfo.java:45)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getType(PhpTypeInfo.java:31)
    at com.jetbrains.php.lang.psi.elements.impl.PhpReferenceImpl.getType(PhpReferenceImpl.java:251)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeAnalyserVisitor.visitPhpBinaryExpression(PhpTypeAnalyserVisitor.java:726)
    at com.jetbrains.php.lang.psi.elements.impl.BinaryExpressionImpl.accept(BinaryExpressionImpl.java:57)
    at com.jetbrains.php.lang.psi.elements.impl.PhpPsiElementImpl.accept(PhpPsiElementImpl.java:73)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeAnalyserVisitor.getTypeFromAST(PhpTypeAnalyserVisitor.java:193)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.lambda$getTypeFromAST$1(PhpTypeInfo.java:82)
    at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:112)
    at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:42)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getTypeFromAST(PhpTypeInfo.java:80)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getTypeCached(PhpTypeInfo.java:63)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getType(PhpTypeInfo.java:45)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getType(PhpTypeInfo.java:31)
    at com.jetbrains.php.lang.psi.elements.impl.PhpTypedElementImpl.getType(PhpTypedElementImpl.java:24)
    at com.jetbrains.php.lang.psi.elements.impl.PhpExpressionImpl.getType(PhpExpressionImpl.java:80)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeAnalyserVisitor.visitPhpArrayCreationExpression(PhpTypeAnalyserVisitor.java:572)
    at com.jetbrains.php.lang.psi.elements.impl.ArrayCreationExpressionImpl.accept(ArrayCreationExpressionImpl.java:37)
    at com.jetbrains.php.lang.psi.elements.impl.PhpASTElementImpl.accept(PhpASTElementImpl.java:26)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeAnalyserVisitor.getTypeFromAST(PhpTypeAnalyserVisitor.java:193)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.lambda$getTypeFromAST$1(PhpTypeInfo.java:82)
    at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:112)
    at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:42)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getTypeFromAST(PhpTypeInfo.java:80)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getTypeCached(PhpTypeInfo.java:63)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getType(PhpTypeInfo.java:45)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getType(PhpTypeInfo.java:31)
    at com.jetbrains.php.lang.psi.elements.impl.PhpReferenceImpl.getType(PhpReferenceImpl.java:251)
    at com.jetbrains.php.lang.psi.elements.impl.ArrayCreationExpressionImpl.getType(ArrayCreationExpressionImpl.java:77)
    at com.jetbrains.php.lang.psi.resolve.types.PhpType.add(PhpType.java:554)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeAnalyserVisitor.filterFalseFromDefaultValueTypeIfNeeded(PhpTypeAnalyserVisitor.java:842)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeAnalyserVisitor.visitPhpField(PhpTypeAnalyserVisitor.java:835)
    at com.jetbrains.php.lang.psi.elements.impl.FieldImpl.accept(FieldImpl.java:61)
    at com.jetbrains.php.lang.psi.elements.impl.PhpPsiElementImpl.accept(PhpPsiElementImpl.java:73)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeAnalyserVisitor.getTypeFromAST(PhpTypeAnalyserVisitor.java:193)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.lambda$getTypeFromAST$1(PhpTypeInfo.java:82)
    at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:112)
    at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:42)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getTypeFromAST(PhpTypeInfo.java:80)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getTypeCached(PhpTypeInfo.java:63)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getType(PhpTypeInfo.java:45)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getType(PhpTypeInfo.java:31)
    at com.jetbrains.php.lang.psi.elements.impl.PhpTypedElementImpl.getType(PhpTypedElementImpl.java:24)
    at com.jetbrains.php.lang.psi.elements.impl.FieldImpl.getType(FieldImpl.java:240)
    at com.jetbrains.php.PhpPresentationUtil.formatType(PhpPresentationUtil.java:237)
    at com.jetbrains.php.structureView.PhpStructureViewTreeElement.createPresentation(PhpStructureViewTreeElement.java:108)
    at com.jetbrains.php.structureView.PhpStructureViewTreeElement.<init>(PhpStructureViewTreeElement.java:52)
    at com.jetbrains.php.structureView.PhpStructureViewTreeElement.collectChildren(PhpStructureViewTreeElement.java:187)
    at com.jetbrains.php.structureView.PhpStructureViewTreeElement.getChildrenBase(PhpStructureViewTreeElement.java:165)
    at com.intellij.ide.structureView.impl.common.PsiTreeElementBase.doGetChildren(PsiTreeElementBase.java:84)
    at com.intellij.ide.structureView.impl.common.PsiTreeElementBase.lambda$getChildrenWithoutCustomRegions$1(PsiTreeElementBase.java:79)
    at com.intellij.ide.util.treeView.AbstractTreeUi.lambda$calculateYieldingToWriteAction$7(AbstractTreeUi.java:1718)
    at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1102)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtils.lambda$runInReadActionWithWriteActionPriority$0(ProgressIndicatorUtils.java:72)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtilService.runActionAndCancelBeforeWrite(ProgressIndicatorUtilService.java:63)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runActionAndCancelBeforeWrite(ProgressIndicatorUtils.java:129)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtils.lambda$runWithWriteActionPriority$1(ProgressIndicatorUtils.java:110)
    at com.intellij.openapi.progress.ProgressManager.lambda$runProcess$1(ProgressManager.java:70)
    at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:186)
    at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$13(CoreProgressManager.java:604)
    at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:679)
    at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:635)
    at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:603)
    at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:60)
    at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:173)
    at com.intellij.openapi.progress.ProgressManager.runProcess(ProgressManager.java:70)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runWithWriteActionPriority(ProgressIndicatorUtils.java:107)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runInReadActionWithWriteActionPriority(ProgressIndicatorUtils.java:72)
    at com.intellij.openapi.progress.impl.ProgressManagerImpl.runInReadActionWithWriteActionPriority(ProgressManagerImpl.java:165)
    at com.intellij.ide.util.treeView.AbstractTreeUi.calculateYieldingToWriteAction(AbstractTreeUi.java:1717)
    at com.intellij.ide.structureView.impl.common.PsiTreeElementBase.getChildrenWithoutCustomRegions(PsiTreeElementBase.java:79)
    at com.intellij.ide.navigationToolbar.StructureAwareNavBarModelExtension.childrenFromNodeAndProviders(StructureAwareNavBarModelExtension.kt:137)
    at com.intellij.ide.navigationToolbar.StructureAwareNavBarModelExtension.findParentInModel(StructureAwareNavBarModelExtension.kt:87)
    at com.jetbrains.php.navigation.PhpNavBarExtension.findParentInModel(PhpNavBarExtension.java:64)
    at com.intellij.ide.navigationToolbar.StructureAwareNavBarModelExtension.findParentInModel(StructureAwareNavBarModelExtension.kt:91)
    at com.jetbrains.php.navigation.PhpNavBarExtension.findParentInModel(PhpNavBarExtension.java:64)
    at com.intellij.ide.navigationToolbar.StructureAwareNavBarModelExtension.getParent(StructureAwareNavBarModelExtension.kt:73)
    at com.intellij.ide.navbar.impl.DefaultNavBarItemProvider$findParent$parent$1.invoke(DefaultNavBarItemProvider.kt:48)
    at com.intellij.ide.navbar.impl.DefaultNavBarItemProvider$findParent$parent$1.invoke(DefaultNavBarItemProvider.kt:46)
    at com.intellij.ide.navbar.impl.DefaultNavBarItemProviderKt.fromOldExtensions(DefaultNavBarItemProvider.kt:145)
    at com.intellij.ide.navbar.impl.DefaultNavBarItemProvider.findParent(DefaultNavBarItemProvider.kt:46)
    at com.intellij.ide.navbar.impl.ImplKt.findParent(impl.kt:21)
    at com.intellij.ide.navbar.impl.ImplKt.access$findParent(impl.kt:1)
    at com.intellij.ide.navbar.impl.ImplKt$pathToItem$1.invoke(impl.kt:15)
    at com.intellij.ide.navbar.impl.ImplKt$pathToItem$1.invoke(impl.kt:14)
    at kotlin.sequences.GeneratorSequence$iterator$1.calcNext(Sequences.kt:591)
    at kotlin.sequences.GeneratorSequence$iterator$1.hasNext(Sequences.kt:609)
    at kotlin.sequences.SequencesKt___SequencesKt.toCollection(_Sequences.kt:787)
    at kotlin.sequences.SequencesKt___SequencesKt.toMutableList(_Sequences.kt:817)
    at kotlin.sequences.SequencesKt___SequencesKt.toList(_Sequences.kt:808)
    at com.intellij.ide.navbar.impl.ImplKt.pathToItem(impl.kt:16)
    at com.intellij.ide.navbar.ide.NavBarServiceKt.contextModelInner(NavBarService.kt:154)
    at com.intellij.ide.navbar.ide.NavBarServiceKt.access$contextModelInner(NavBarService.kt:1)
    at com.intellij.ide.navbar.ide.NavBarServiceKt$contextModel$2.invoke(NavBarService.kt:136)
    at com.intellij.ide.navbar.ide.NavBarServiceKt$contextModel$2.invoke(NavBarService.kt:135)
    at com.intellij.openapi.application.rw.InternalReadAction.insideReadAction(InternalReadAction.kt:108)
    at com.intellij.openapi.application.rw.InternalReadAction.access$insideReadAction(InternalReadAction.kt:15)
    at com.intellij.openapi.application.rw.InternalReadAction$tryReadCancellable$1.invoke(InternalReadAction.kt:92)
    at com.intellij.openapi.application.rw.InternalReadAction$tryReadCancellable$1.invoke(InternalReadAction.kt:91)
    at com.intellij.openapi.progress.CancellationKt.withCurrentJob$lambda$0(cancellation.kt:17)
    at com.intellij.openapi.progress.Cancellation.withCurrentJob(Cancellation.java:60)
    at com.intellij.openapi.progress.CancellationKt.withCurrentJob(cancellation.kt:17)
    at com.intellij.openapi.progress.CancellationKt.executeWithJobAndCompleteIt(cancellation.kt:126)
    at com.intellij.openapi.application.rw.CancellableReadActionKt.cancellableReadActionInternal$lambda$1$lambda$0(cancellableReadAction.kt:49)
    at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1102)
    at com.intellij.openapi.application.rw.CancellableReadActionKt.cancellableReadActionInternal$lambda$1(cancellableReadAction.kt:47)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtilService.runActionAndCancelBeforeWrite(ProgressIndicatorUtilService.java:63)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runActionAndCancelBeforeWrite(ProgressIndicatorUtils.java:129)
    at com.intellij.openapi.application.rw.CancellableReadActionKt.cancellableReadActionInternal(cancellableReadAction.kt:45)
    at com.intellij.openapi.application.rw.InternalReadAction.tryReadCancellable(InternalReadAction.kt:91)
    at com.intellij.openapi.application.rw.InternalReadAction.access$tryReadCancellable(InternalReadAction.kt:15)
    at com.intellij.openapi.application.rw.InternalReadAction$tryReadAction$2.invoke(InternalReadAction.kt:77)
    at com.intellij.openapi.application.rw.InternalReadAction$tryReadAction$2.invoke(InternalReadAction.kt:72)
    at com.intellij.openapi.progress.CancellationKt.withCurrentJob$lambda$0(cancellation.kt:17)
    at com.intellij.openapi.progress.Cancellation.withCurrentJob(Cancellation.java:60)
    at com.intellij.openapi.progress.CancellationKt.withCurrentJob(cancellation.kt:17)
    at com.intellij.openapi.progress.CoroutinesKt.blockingContext(coroutines.kt:193)
    at com.intellij.openapi.application.rw.InternalReadAction.tryReadAction(InternalReadAction.kt:72)
    at com.intellij.openapi.application.rw.InternalReadAction.readLoop(InternalReadAction.kt:64)
    at com.intellij.openapi.application.rw.InternalReadAction.access$readLoop(InternalReadAction.kt:15)
    at com.intellij.openapi.application.rw.InternalReadAction$runReadAction$4.invokeSuspend(InternalReadAction.kt:43)
    at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
    at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
    at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:570)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:677)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:664)
Caused by: java.lang.NullPointerException: Cannot invoke "String.equals(Object)" because "<local6>" is null
    at com.magicento.extensions.FactoryTypeProvider3.getTypeForMethodReference(FactoryTypeProvider3.java:255)
    at com.magicento.extensions.FactoryTypeProvider3.getTypeString(FactoryTypeProvider3.java:530)
    at com.magicento.extensions.FactoryTypeProvider3.getType(FactoryTypeProvider3.java:658)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.lambda$getTypeFromAST$1(PhpTypeInfo.java:106)
    ... 131 more
pquerner commented 1 year ago

Another one, while visiting / debugging \Mage_Adminhtml_Block_System_Config_Form::initFields

com.intellij.diagnostic.PluginException: TypeProvider contract violation? by class com.magicento.extensions.FactoryTypeProvider3 on $optionArray [Plugin: Magicento]
    at com.intellij.diagnostic.PluginProblemReporterImpl.createPluginExceptionByClass(PluginProblemReporterImpl.java:23)
    at com.intellij.diagnostic.PluginException.createByClass(PluginException.java:89)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.lambda$getTypeFromAST$1(PhpTypeInfo.java:118)
    at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:112)
    at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:42)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getTypeFromAST(PhpTypeInfo.java:80)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getTypeCached(PhpTypeInfo.java:63)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getType(PhpTypeInfo.java:45)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getType(PhpTypeInfo.java:31)
    at com.jetbrains.php.codeInsight.typeInference.PhpVariableInferredTypeAnalyzerProcessor.getType(PhpVariableInferredTypeAnalyzerProcessor.java:574)
    at com.jetbrains.php.codeInsight.typeInference.PhpVariableInferredTypeAnalyzerProcessor.getType(PhpVariableInferredTypeAnalyzerProcessor.java:566)
    at com.jetbrains.php.codeInsight.typeInference.PhpVariableInferredTypeAnalyzerProcessor.processAccessVariableInstruction(PhpVariableInferredTypeAnalyzerProcessor.java:134)
    at com.jetbrains.php.codeInsight.controlFlow.instructions.impl.PhpAccessVariableInstructionImpl.process(PhpAccessVariableInstructionImpl.java:46)
    at com.jetbrains.php.codeInsight.controlFlow.PhpControlFlowUtil.processPredecessors(PhpControlFlowUtil.java:344)
    at com.jetbrains.php.codeInsight.controlFlow.PhpControlFlowUtil.processPredecessors(PhpControlFlowUtil.java:314)
    at com.jetbrains.php.codeInsight.controlFlow.PhpControlFlowUtil.processPredecessors(PhpControlFlowUtil.java:283)
    at com.jetbrains.php.codeInsight.typeInference.PhpVariableInferredTypeAnalyzerProcessor.inferType(PhpVariableInferredTypeAnalyzerProcessor.java:658)
    at com.jetbrains.php.codeInsight.typeInference.PhpVariableInferredTypeAnalyzerProcessor.inferType(PhpVariableInferredTypeAnalyzerProcessor.java:650)
    at com.jetbrains.php.codeInsight.typeInference.PhpVariableInferredTypeAnalyzerProcessor.inferTypeDfaBasedTypeStateAware(PhpVariableInferredTypeAnalyzerProcessor.java:582)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeAnalyserVisitor.inferVariableType(PhpTypeAnalyserVisitor.java:473)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeAnalyserVisitor.addInferredType(PhpTypeAnalyserVisitor.java:423)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeAnalyserVisitor.visitPhpVariable(PhpTypeAnalyserVisitor.java:397)
    at com.jetbrains.php.lang.psi.elements.impl.VariableImpl.accept(VariableImpl.java:141)
    at com.jetbrains.php.lang.psi.elements.impl.PhpPsiElementImpl.accept(PhpPsiElementImpl.java:73)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeAnalyserVisitor.getTypeFromAST(PhpTypeAnalyserVisitor.java:193)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.lambda$getTypeFromAST$1(PhpTypeInfo.java:82)
    at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:112)
    at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:42)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getTypeFromAST(PhpTypeInfo.java:80)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getTypeCached(PhpTypeInfo.java:63)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getType(PhpTypeInfo.java:45)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getType(PhpTypeInfo.java:31)
    at com.jetbrains.php.lang.psi.elements.impl.PhpTypedElementImpl.getType(PhpTypedElementImpl.java:24)
    at com.jetbrains.php.lang.psi.elements.impl.VariableImpl.getType(VariableImpl.java:667)
    at com.jetbrains.php.lang.psi.resolve.types.PhpType.add(PhpType.java:554)
    at com.jetbrains.php.lang.inspections.type.PhpParamsInspection.checkParametersTypes(PhpParamsInspection.java:168)
    at com.jetbrains.php.lang.inspections.type.PhpParamsInspection.lambda$checkCall$1(PhpParamsInspection.java:135)
    at com.jetbrains.php.lang.inspections.type.PhpParamsInspection.processSignatures(PhpParamsInspection.java:397)
    at com.jetbrains.php.lang.inspections.type.PhpParamsInspection.checkCall(PhpParamsInspection.java:131)
    at com.jetbrains.php.lang.inspections.type.PhpParamsInspection$1.visitPhpMethodReference(PhpParamsInspection.java:89)
    at com.jetbrains.php.lang.psi.elements.impl.MethodReferenceImpl.accept(MethodReferenceImpl.java:45)
    at com.jetbrains.php.lang.psi.elements.impl.PhpASTElementImpl.accept(PhpASTElementImpl.java:26)
    at com.intellij.codeInsight.daemon.impl.InspectionRunner.lambda$processInOrder$10(InspectionRunner.java:323)
    at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1102)
    at com.intellij.codeInsight.daemon.impl.InspectionRunner.lambda$processInOrder$11(InspectionRunner.java:331)
    at com.intellij.openapi.application.impl.ReadMostlyRWLock.executeByImpatientReader(ReadMostlyRWLock.java:229)
    at com.intellij.openapi.application.impl.ApplicationImpl.executeByImpatientReader(ApplicationImpl.java:187)
    at com.intellij.codeInsight.daemon.impl.InspectionRunner.lambda$processInOrder$12(InspectionRunner.java:337)
    at com.intellij.util.AstLoadingFilter.forceAllowTreeLoading(AstLoadingFilter.java:159)
    at com.intellij.util.AstLoadingFilter.forceAllowTreeLoading(AstLoadingFilter.java:151)
    at com.intellij.codeInsight.daemon.impl.InspectionRunner.lambda$processInOrder$13(InspectionRunner.java:300)
    at com.intellij.util.AstLoadingFilter.disallowTreeLoading(AstLoadingFilter.java:130)
    at com.intellij.util.AstLoadingFilter.disallowTreeLoading(AstLoadingFilter.java:119)
    at com.intellij.codeInsight.daemon.impl.InspectionRunner.lambda$processInOrder$14(InspectionRunner.java:300)
    at com.intellij.concurrency.JobLauncherImpl$1MyProcessQueueTask.lambda$call$0(JobLauncherImpl.java:299)
    at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$13(CoreProgressManager.java:604)
    at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:679)
    at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:635)
    at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:603)
    at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:60)
    at com.intellij.concurrency.JobLauncherImpl$1MyProcessQueueTask.call(JobLauncherImpl.java:284)
    at com.intellij.concurrency.JobLauncherImpl$1MyProcessQueueTask.call(JobLauncherImpl.java:272)
    at java.base/java.util.concurrent.ForkJoinTask$AdaptedCallable.exec(ForkJoinTask.java:1428)
    at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:373)
    at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1182)
    at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1655)
    at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1622)
    at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165)
Caused by: com.intellij.diagnostic.PluginException: TypeProvider contract violation? by class com.magicento.extensions.FactoryTypeProvider3 on $sourceModel->$method() [Plugin: Magicento]
    at com.intellij.diagnostic.PluginProblemReporterImpl.createPluginExceptionByClass(PluginProblemReporterImpl.java:23)
    at com.intellij.diagnostic.PluginException.createByClass(PluginException.java:89)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.lambda$getTypeFromAST$1(PhpTypeInfo.java:118)
    at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:112)
    at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:42)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getTypeFromAST(PhpTypeInfo.java:80)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getTypeCached(PhpTypeInfo.java:63)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getType(PhpTypeInfo.java:45)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getType(PhpTypeInfo.java:31)
    at com.jetbrains.php.lang.psi.elements.impl.PhpReferenceImpl.getType(PhpReferenceImpl.java:251)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeAnalyserVisitor.addTypeFromExpression(PhpTypeAnalyserVisitor.java:160)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeAnalyserVisitor.addInferredType(PhpTypeAnalyserVisitor.java:419)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeAnalyserVisitor.visitPhpVariable(PhpTypeAnalyserVisitor.java:397)
    at com.jetbrains.php.lang.psi.elements.impl.VariableImpl.accept(VariableImpl.java:141)
    at com.jetbrains.php.lang.psi.elements.impl.PhpPsiElementImpl.accept(PhpPsiElementImpl.java:73)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeAnalyserVisitor.getTypeFromAST(PhpTypeAnalyserVisitor.java:193)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.lambda$getTypeFromAST$1(PhpTypeInfo.java:82)
    at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:112)
    at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:42)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getTypeFromAST(PhpTypeInfo.java:80)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getTypeCached(PhpTypeInfo.java:63)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getType(PhpTypeInfo.java:45)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getType(PhpTypeInfo.java:31)
    at com.jetbrains.php.lang.psi.elements.impl.PhpTypedElementImpl.getType(PhpTypedElementImpl.java:24)
    at com.jetbrains.php.lang.psi.elements.impl.VariableImpl.getType(VariableImpl.java:667)
    at com.jetbrains.php.lang.psi.elements.impl.VariableImpl.getSignatures(VariableImpl.java:614)
    at com.jetbrains.php.lang.psi.elements.impl.VariableImpl.getSignatureParts(VariableImpl.java:594)
    at com.jetbrains.php.lang.psi.elements.PhpReference.getSignature(PhpReference.java:68)
    at com.magicento.extensions.FactoryTypeProvider3.getTypeString(FactoryTypeProvider3.java:620)
    at com.magicento.extensions.FactoryTypeProvider3.getType(FactoryTypeProvider3.java:658)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.lambda$getTypeFromAST$1(PhpTypeInfo.java:106)
    ... 65 more
Caused by: java.lang.NullPointerException: Cannot invoke "String.equals(Object)" because "<local6>" is null
    at com.magicento.extensions.FactoryTypeProvider3.getTypeForMethodReference(FactoryTypeProvider3.java:255)
    at com.magicento.extensions.FactoryTypeProvider3.getTypeString(FactoryTypeProvider3.java:530)
    at com.magicento.extensions.FactoryTypeProvider3.getType(FactoryTypeProvider3.java:658)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.lambda$getTypeFromAST$1(PhpTypeInfo.java:106)
    ... 93 more
enriquepiatti commented 1 year ago

Please try with version 3.3.8

pquerner commented 1 year ago

3.3.8 fixed this