@@ -35,6 +35,7 @@ struct AnalyzeRequest {
3535 bool includeMovesOwnershipStdev;
3636 bool includePolicy;
3737 bool includePVVisits;
38+ bool includeNoResultValue;
3839
3940 bool reportDuringSearch;
4041 double reportDuringSearchEvery;
@@ -238,6 +239,7 @@ int MainCmds::analysis(const vector<string>& args) {
238239 " includeOwnershipStdev" ,
239240 " includePolicy" ,
240241 " includePVVisits" ,
242+ " includeNoResultValue" ,
241243 " reportDuringSearchEvery" ,
242244 " firstReportDuringSearchAfter" ,
243245 " priority" ,
@@ -323,6 +325,7 @@ int MainCmds::analysis(const vector<string>& args) {
323325 request->includeOwnership ,request->includeOwnershipStdev ,
324326 request->includeMovesOwnership ,request->includeMovesOwnershipStdev ,
325327 request->includePVVisits ,
328+ request->includeNoResultValue ,
326329 ret
327330 );
328331
@@ -536,7 +539,8 @@ int MainCmds::analysis(const vector<string>& args) {
536539 nnEval->clearCache ();
537540 if (humanEval != NULL )
538541 humanEval->clearCache ();
539- evalCache->clear ();
542+ if (evalCache != nullptr )
543+ evalCache->clear ();
540544 pushToWrite (new string (input.dump ()));
541545 }
542546 else if (action == " terminate" ) {
@@ -618,6 +622,7 @@ int MainCmds::analysis(const vector<string>& args) {
618622 rbase.includeMovesOwnershipStdev = false ;
619623 rbase.includePolicy = false ;
620624 rbase.includePVVisits = false ;
625+ rbase.includeNoResultValue = false ;
621626 rbase.reportDuringSearch = false ;
622627 rbase.reportDuringSearchEvery = 1e30 ;
623628 rbase.firstReportDuringSearchAfter = 1e30 ;
@@ -1027,6 +1032,11 @@ int MainCmds::analysis(const vector<string>& args) {
10271032 if (!suc)
10281033 continue ;
10291034 }
1035+ if (input.find (" includeNoResultValue" ) != input.end ()) {
1036+ bool suc = parseBoolean (input, " includeNoResultValue" , rbase.includeNoResultValue , " Must be a boolean" );
1037+ if (!suc)
1038+ continue ;
1039+ }
10301040 if (input.find (" reportDuringSearchEvery" ) != input.end ()) {
10311041 bool suc = parseDouble (input, " reportDuringSearchEvery" , rbase.reportDuringSearchEvery , 0.001 , 1000000.0 , " Must be number of seconds from 0.001 to 1000000.0" );
10321042 if (!suc)
@@ -1171,6 +1181,7 @@ int MainCmds::analysis(const vector<string>& args) {
11711181 newRequest->includeMovesOwnershipStdev = rbase.includeMovesOwnershipStdev ;
11721182 newRequest->includePolicy = rbase.includePolicy ;
11731183 newRequest->includePVVisits = rbase.includePVVisits ;
1184+ newRequest->includeNoResultValue = rbase.includeNoResultValue ;
11741185 newRequest->reportDuringSearch = rbase.reportDuringSearch ;
11751186 newRequest->reportDuringSearchEvery = rbase.reportDuringSearchEvery ;
11761187 newRequest->firstReportDuringSearchAfter = rbase.firstReportDuringSearchAfter ;
0 commit comments