// TODO: Not used anywhere public NdAnalyzer(OptimizationContext context, int posA, int posB, ushort variable) { this.Variable = variable; var graphs = CreateVariableUsageGraphs(context); var initialState = new NdState(Variable, graphs, context.VariableAllocator, posA, posB); validPositionsForB = CalculatePositionsWhereBMightHaveBeen(context, posA, variable); var bounds = context.Backtracer.GetBoundsAt(posB, false); initialState = initialState .SetMinBounds(bounds.MinBounds) .SetMaxBounds(bounds.MaxBounds); Result = Analyze(context, initialState); }
public override NdState SetMinBounds(int offset) => state.SetMinBounds(offset);