public CSharpExplodedGraph(IControlFlowGraph cfg, ISymbol declaration, SemanticModel semanticModel, AbstractLiveVariableAnalysis lva)
     : base(cfg, declaration, semanticModel, lva)
 {
     // Add mandatory checks
     AddExplodedGraphCheck(new NullPointerDereference.NullPointerCheck(this));
     AddExplodedGraphCheck(new EmptyNullableValueAccess.NullValueAccessedCheck(this));
     AddExplodedGraphCheck(new InvalidCastToInterface.NullableCastCheck(this));
 }
        protected AbstractExplodedGraph(IControlFlowGraph cfg, ISymbol declaration, SemanticModel semanticModel, AbstractLiveVariableAnalysis lva)
        {
            this.cfg         = cfg;
            this.declaration = declaration;
            this.lva         = lva;

            SemanticModel = semanticModel;

            declarationParameters      = declaration.GetParameters();
            nonInDeclarationParameters = declarationParameters.Where(p => p.RefKind != RefKind.None);
        }