Esempio n. 1
0
 public TrimAnalysisVisitor(
     LocalStateLattice <MultiValue, ValueSetLattice <SingleValue> > lattice,
     OperationBlockAnalysisContext context
     ) : base(lattice, context)
 {
     _multiValueLattice   = lattice.Lattice.ValueLattice;
     TrimAnalysisPatterns = new TrimAnalysisPatternStore(_multiValueLattice);
 }
Esempio n. 2
0
 public TrimAnalysisVisitor(
     LocalStateLattice <MultiValue, ValueSetLattice <SingleValue> > lattice,
     OperationBlockAnalysisContext context,
     ImmutableDictionary <CaptureId, FlowCaptureKind> lValueFlowCaptures
     ) : base(lattice, context, lValueFlowCaptures)
 {
     _multiValueLattice   = lattice.Lattice.ValueLattice;
     TrimAnalysisPatterns = new TrimAnalysisPatternStore(_multiValueLattice);
 }
Esempio n. 3
0
 public LocalDataFlowVisitor(LocalStateLattice <TValue, TValueLattice> lattice, OperationBlockAnalysisContext context, ImmutableDictionary <CaptureId, FlowCaptureKind> lValueFlowCaptures) =>
 (LocalStateLattice, Context, this.lValueFlowCaptures) = (lattice, context, lValueFlowCaptures);
Esempio n. 4
0
 public TrimDataFlowAnalysis(OperationBlockAnalysisContext context, ControlFlowGraph cfg)
 {
     ControlFlowGraph = new ControlFlowGraphProxy(cfg);
     Lattice          = new (new ValueSetLattice <SingleValue> ());
     Context          = context;
 }
Esempio n. 5
0
 public LocalDataFlowVisitor(LocalStateLattice <TValue, TValueLattice> lattice, OperationBlockAnalysisContext context) =>
 (LocalStateLattice, Context) = (lattice, context);