public DiagnosticWalker(SymbolAnalysisContext context, SemanticModel semanticModel, PXContext pxContext, ImmutableArray <ILocalSymbol> rowVariables, // variables which were assigned with e.Row params object[] messageArgs) { pxContext.ThrowOnNull(nameof(pxContext)); semanticModel.ThrowOnNull(nameof(semanticModel)); _context = context; _semanticModel = semanticModel; _pxContext = pxContext; _rowVariables = rowVariables.ToImmutableHashSet(); _messageArgs = messageArgs; _variableMemberAccessWalker = new VariableMemberAccessWalker(_rowVariables, semanticModel); }