internal int GetVisitedCount(ProgramPoint programPoint) { if (!ProgramPointVisitCounts.TryGetValue(programPoint, out var value)) { value = 0; } return(value); }
internal ProgramState AddVisit(ProgramPoint visitedProgramPoint) { var visitCount = GetVisitedCount(visitedProgramPoint); return(new ProgramState( Values, Constraints, ProgramPointVisitCounts.SetItem(visitedProgramPoint, visitCount + 1), ExpressionStack, Relationships)); }