Example #1
0
            public override T Instantiate <Local, Parameter, Method, Field, Property, Event, Type, Attribute, Assembly, Expression, Variable, T>
            (
                string methodName,
                IMethodDriver <Local, Parameter, Method, Field, Property, Event, Type, Attribute, Assembly, Expression, Variable, ILogOptions> mdriver,
                Predicate <APC> cachePCs,
                IMethodAnalysisClientFactory <Local, Parameter, Method, Field, Property, Event, Type, Attribute, Assembly, Expression, Variable, T> factory, DFAController controller
            )
            {
                var numericalAnalysis =
                    new AnalysisWrapper.TypeBindings <Local, Parameter, Method, Field, Property, Event, Type, Attribute, Assembly, Expression, Variable> .
                    NumericalAnalysis <Bounds.BoundsOptions>(methodName, mdriver, this.boundsOptions, cachePCs, controller);

                var nonnullAnalysis =
                    this.nonnullAnalysis != null ?
                    new Analyzers.NonNull.TypeBindings <Local, Parameter, Method, Field, Property, Event, Type, Attribute, Assembly, Expression, Variable> .
                    AnalysisForArrays(mdriver, this.nonnullAnalysis, cachePCs)
          : null;

                var arrayAnalysis =
                    new AnalysisWrapper.TypeBindings <Local, Parameter, Method, Field, Property, Event, Type, Attribute, Assembly, Expression, Variable> .
                    ArrayAnalysisPlugIn(methodName, mdriver, this.options[0].LogOptions, cachePCs);

                var analysis =
                    new AnalysisWrapper.TypeBindings <Local, Parameter, Method, Field, Property, Event, Type, Attribute, Assembly, Expression, Variable> .
                    ArrayAnalysis <Analyzers.Arrays.ArrayOptions, Bounds.BoundsOptions>(methodName, arrayAnalysis, numericalAnalysis, nonnullAnalysis, this.IsEnumAnalysisSelected, mdriver, this.options[0], cachePCs);

                return(factory.Create(analysis, controller));
            }
 abstract public T Instantiate <Local, Parameter, Method, Field, Property, Event, Type, Attribute, Assembly, Expression, Variable, T>(
     string fullMethodName,
     IMethodDriver <Local, Parameter, Method, Field, Property, Event, Type, Attribute, Assembly, Expression, Variable, ILogOptions> driver,
     Predicate <APC> cachePCs,
     IMethodAnalysisClientFactory <Local, Parameter, Method, Field, Property, Event, Type, Attribute, Assembly, Expression, Variable, T> factory
     )
     where Variable : IEquatable <Variable>
     where Expression : IEquatable <Expression>
     where Type : IEquatable <Type>;
Example #3
0
            public override T Instantiate <Local, Parameter, Method, Field, Property, Event, Type, Attribute, Assembly, Expression, Variable, T>(
                string methodName,
                IMethodDriver <Local, Parameter, Method, Field, Property, Event, Type, Attribute, Assembly, Expression, Variable, ILogOptions> driver,
                Predicate <APC> cachePCs,
                IMethodAnalysisClientFactory <Local, Parameter, Method, Field, Property, Event, Type, Attribute, Assembly, Expression, Variable, T> factory
                )
            {
                var analysis = new AnalysisWrapper.TypeBindings <Local, Parameter, Method, Field, Property, Event, Type, Attribute, Assembly, Expression, Variable> .
                               StringValueAnalysis(methodName, driver, options[0], cachePCs);

                return(factory.Create(analysis));
            }
            public override T Instantiate <Local, Parameter, Method, Field, Property, Event, Type, Attribute, Assembly, Expression, Variable, T>(
                string methodName,
                IMethodDriver <Local, Parameter, Method, Field, Property, Event, Type, Attribute, Assembly, Expression, Variable, ILogOptions> driver,
                Predicate <APC> cachePCs,
                IMethodAnalysisClientFactory <Local, Parameter, Method, Field, Property, Event, Type, Attribute, Assembly, Expression, Variable, T> factory, DFAController controller
                )
            {
                var adomain  = options[0].Type;
                var analysis = new AnalysisWrapper.TypeBindings <Local, Parameter, Method, Field, Property, Event, Type, Attribute, Assembly, Expression, Variable> .ArithmeticAnalysis(methodName, driver, options[0], adomain, cachePCs, controller);

                return(factory.Create(analysis, controller));
            }