DFAType (@Nullable PsiType mixin, @Nullable ConditionInstruction instruction) { if (mixin == null) { return this; } Mixin newMixin = new Mixin(mixin, instruction, instruction != null && instruction.isNegated()); if (mixins.contains(newMixin)) { return this; } DFAType newDfaType = new DFAType(this.primary); newDfaType.mixins.addAll(this.mixins); newDfaType.mixins.add(newMixin); return newDfaType; }