 
 



 
		
		 BestGuess (lines 2683-2712)
			
		
				 
		Back to List 
				
					 
			Browsing parserm.h
					2683  !  BestGuess makes the best guess it can out of the match list, assuming that
2684  !  everything in the match list is textually as good as everything else;
2685  !  however it ignores items marked as -1, and so marks anything it chooses.
2686  !  It returns -1 if there are no possible choices.
2687  ! ----------------------------------------------------------------------------
2688   
2689  [ BestGuess  earliest its_score best i;
2690   
2691    earliest=0; best=-1;
2692    for (i=0:i<number_matched:i++)
2693    {   if (match_list-->i >= 0)
2694        {   its_score=match_scores-->i;
2695            if (its_score>best) { best=its_score; earliest=i; }
2696        }
2697    }
2698  #ifdef DEBUG;
2699    if (parser_trace>=4)
2700    {   if (best<0)
2701            print "   Best guess ran out of choices^";
2702        else
2703            print "   Best guess ", (the) match_list-->earliest,
2704                  " (", match_list-->earliest, ")^";
2705    }
2706  #endif;
2707    if (best<0) return -1;
2708    i=match_list-->earliest;
2709    match_list-->earliest=-1;
2710    bestguess_score = best;
2711    return i;
2712  ];
  
    Last updated 27 February 2004.
  
  This site is no longer supported; information may be out of date.
  Maintained as a historical archive by the Interactive Fiction Technology Foundation.
  Copyright 1993-2018 IFTF, CC-BY-SA unless otherwise noted.
  
    This page was originally managed by Graham Nelson (graham@gnelson.demon.co.uk) assisted by C Knight.