protected ImmutableArray <TMatch>?AnalyzeWorker() { if (_syntaxFacts.GetObjectCreationInitializer(_objectCreationExpression) != null) { // Don't bother if this already has an initializer. return(null); } if (!ShouldAnalyze()) { return(null); } _containingStatement = _objectCreationExpression.FirstAncestorOrSelf <TStatementSyntax>(); if (_containingStatement == null) { return(null); } if (!TryInitializeVariableDeclarationCase() && !TryInitializeAssignmentCase()) { return(null); } var matches = ArrayBuilder <TMatch> .GetInstance(); AddMatches(matches); return(matches.ToImmutableAndFree()); }