Beispiel #1
0
 public CallGraphOrder(
     bool constructorsFirst,
     IDecodeMetaData <Local, Parameter, Method, Field, Property, Event, Type, Attribute, Assembly> md,
     IDecodeContracts <Local, Parameter, Method, Field, Type> cd,
     Set <string> underAnalysis,
     FieldsDB <Local, Parameter, Method, Field, Property, Event, Type, Attribute, Assembly> fieldsDB,
     CancellationToken cancellationToken)
     : base(md, cd, fieldsDB)
 {
     this.constructorsFirst       = constructorsFirst;
     this.callGraph               = new SingleEdgeGraph <Node, Unit>(null, new Node.EqualityComparer(md));
     this.assembliesUnderAnalysis = underAnalysis;
     this.contractConsumer        = new ContractConsumer(this);
     this.cancellationToken       = cancellationToken;
 }
Beispiel #2
0
 public Result AccessEnsures <Data, Result> (Method method, ICodeConsumer <Data, Result> consumer, Data data)
 {
     method = GetMethodWithContractFor(method);
     return(consumer.Accept(CodeProviderImpl.Instance, new CodeProviderImpl.PC(method.MethodContract, method.MethodContract.RequiresCount + 2), data));
 }