static public TimeOutChecker StartTimeOut(int time, CancellationToken cancellationToken) { Contract.Requires(time > 0); Contract.Ensures(Contract.Result <TimeOutChecker>() != null); timeout = new TimeOutChecker(time, cancellationToken); return(timeout); }
public PreconditionsInferenceBackwardSymbolic( IFactQuery <BoxedExpression, Variable> facts, IMethodDriver <Local, Parameter, Method, Field, Property, Event, Type, Attribute, Assembly, Expression, Variable, LogOptions> mdriver ) { Contract.Requires(facts != null); Contract.Requires(mdriver != null); this.Facts = facts; this.MDriver = mdriver; this.timeout = new TimeOutChecker(TIMEOUT, false); // we do not start the timeout, because we want to do it only for effective computations }
public BackwardsPropagation( APC pcCondition, IFactQuery <BoxedExpression, Variable> facts, IMethodDriver <Local, Parameter, Method, Field, Property, Event, Type, Attribute, Assembly, Expression, Variable, LogOptions> mdriver, TimeOutChecker timeout) { Contract.Requires(mdriver != null); this.pcCondition = pcCondition; this.facts = facts; this.Mdriver = mdriver; this.CFG = this.Mdriver.StackLayer.Decoder.Context.MethodContext.CFG; this.timeout = timeout; this.joinPoints = new Dictionary <APC, Preconditions>(); }
public GenericNecessaryConditionsGenerator( APC pcCondition, IFactQuery <BoxedExpression, Variable> facts, IMethodDriver <Local, Parameter, Method, Field, Property, Event, Type, Attribute, Assembly, Expression, Variable, LogOptions> mdriver, TimeOutChecker timeout) { Contract.Requires(mdriver != null); this.pcCondition = pcCondition; this.facts = facts; this.Mdriver = mdriver; this.CFG = this.Mdriver.StackLayer.Decoder.Context.MethodContext.CFG; this.underVisit = new Set <APC>(); this.timeout = timeout; this.ExpressionReader = new ExpressionReader <Local, Parameter, Method, Field, Property, Event, Type, Attribute, Assembly, Expression, Variable>(); this.SatisfyProcedure = new SimpleSatisfyProcedure <Local, Parameter, Method, Field, Property, Event, Type, Attribute, Assembly>(mdriver.MetaDataDecoder); this.LoopHit = false; this.mutator = new ReplaceSymbolicValueForAccessPath <Local, Parameter, Method, Field, Property, Event, Type, Variable, Expression, Attribute, Assembly>(mdriver.Context, mdriver.MetaDataDecoder); }
public bool MayReturnNull(IFact facts, TimeOutChecker timeout) { return(RecordProfilingInformation(this.inner.MayReturnNull(facts, timeout))); }
public bool MayReturnNull(IFact facts, TimeOutChecker timeout) { Contract.Requires(facts != null); throw new NotImplementedException(); }