poelmanc created this revision.
poelmanc added a reviewer: usaxena95.
poelmanc added a project: clang-tools-extra.
Herald added subscribers: kadircet, arphaman.
poelmanc requested review of this revision.
Herald added subscribers: cfe-commits, ilya-biryukov.
Herald added a project: clang.

clang-tools-extra/clangd/benchmarks/CompletionModel/DecisionForestBenchmark.cpp 
fails to compile since `"CompletionModel.h"` is auto-generated from 
clang-tools-extra/clangd/quality/model/features.json, which was changed in 
https://reviews.llvm.org/D94697 to remove `setFilterLength` and 
`setIsForbidden`, rename `setFileProximityDistance` and 
`setSymbolScopeDistance`, and add `setNumNameInContext` and 
`setFractionNameInContext`.  This patch removes calls to the two removed 
functions, updates calls to the two renamed functions, and adds calls to the 
two new functions. (`20` is an arbitrary choice for the `setNumNameInContext` 
argument.) It also changes the `FlipCoin` argument from float to double to 
silence lossy conversion warnings.

Note: I don't use this tool but encountered the build errors and took a shot at 
fixing them. Please holler if there's another recommended solution. Thanks!


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D97620

Files:
  
clang-tools-extra/clangd/benchmarks/CompletionModel/DecisionForestBenchmark.cpp


Index: 
clang-tools-extra/clangd/benchmarks/CompletionModel/DecisionForestBenchmark.cpp
===================================================================
--- 
clang-tools-extra/clangd/benchmarks/CompletionModel/DecisionForestBenchmark.cpp
+++ 
clang-tools-extra/clangd/benchmarks/CompletionModel/DecisionForestBenchmark.cpp
@@ -21,7 +21,7 @@
 namespace clangd {
 namespace {
 std::vector<Example> generateRandomDataset(int NumExamples) {
-  auto FlipCoin = [&](float Probability) {
+  auto FlipCoin = [&](double Probability) {
     return rand() % 1000 <= Probability * 1000;
   };
   auto RandInt = [&](int Max) { return rand() % Max; };
@@ -38,15 +38,15 @@
     E.setIsImplementationDetail(FlipCoin(0.3)); // Boolean.
     E.setNumReferences(RandInt(10000));         // Can be large integer.
     E.setSymbolCategory(RandInt(10));           // 10 Symbol Category.
-
+    E.setNumNameInContext(RandInt(20));         // 0 to 
Relevance.ContextWords->keys()
+    E.setFractionNameInContext(RandFloat(1.0)); // Float in range [0,1].
     E.setIsNameInContext(FlipCoin(0.5)); // Boolean.
-    E.setIsForbidden(FlipCoin(0.1));     // Boolean.
     E.setIsInBaseClass(FlipCoin(0.3));   // Boolean.
-    E.setFileProximityDistance(
+    E.setFileProximityDistanceCost(
         FlipCoin(0.1) ? 999999 // Sometimes file distance is not available.
                       : RandInt(20));
     E.setSemaFileProximityScore(RandFloat(1)); // Float in range [0,1].
-    E.setSymbolScopeDistance(
+    E.setSymbolScopeDistanceCost(
         FlipCoin(0.1) ? 999999 // Sometimes scope distance is not available.
                       : RandInt(20));
     E.setSemaSaysInScope(FlipCoin(0.5));      // Boolean.
@@ -56,7 +56,6 @@
     E.setHadContextType(FlipCoin(0.6));       // Boolean.
     E.setHadSymbolType(FlipCoin(0.6));        // Boolean.
     E.setTypeMatchesPreferred(FlipCoin(0.5)); // Boolean.
-    E.setFilterLength(RandInt(15));
     Examples.push_back(E);
   }
   return Examples;


Index: clang-tools-extra/clangd/benchmarks/CompletionModel/DecisionForestBenchmark.cpp
===================================================================
--- clang-tools-extra/clangd/benchmarks/CompletionModel/DecisionForestBenchmark.cpp
+++ clang-tools-extra/clangd/benchmarks/CompletionModel/DecisionForestBenchmark.cpp
@@ -21,7 +21,7 @@
 namespace clangd {
 namespace {
 std::vector<Example> generateRandomDataset(int NumExamples) {
-  auto FlipCoin = [&](float Probability) {
+  auto FlipCoin = [&](double Probability) {
     return rand() % 1000 <= Probability * 1000;
   };
   auto RandInt = [&](int Max) { return rand() % Max; };
@@ -38,15 +38,15 @@
     E.setIsImplementationDetail(FlipCoin(0.3)); // Boolean.
     E.setNumReferences(RandInt(10000));         // Can be large integer.
     E.setSymbolCategory(RandInt(10));           // 10 Symbol Category.
-
+    E.setNumNameInContext(RandInt(20));         // 0 to Relevance.ContextWords->keys()
+    E.setFractionNameInContext(RandFloat(1.0)); // Float in range [0,1].
     E.setIsNameInContext(FlipCoin(0.5)); // Boolean.
-    E.setIsForbidden(FlipCoin(0.1));     // Boolean.
     E.setIsInBaseClass(FlipCoin(0.3));   // Boolean.
-    E.setFileProximityDistance(
+    E.setFileProximityDistanceCost(
         FlipCoin(0.1) ? 999999 // Sometimes file distance is not available.
                       : RandInt(20));
     E.setSemaFileProximityScore(RandFloat(1)); // Float in range [0,1].
-    E.setSymbolScopeDistance(
+    E.setSymbolScopeDistanceCost(
         FlipCoin(0.1) ? 999999 // Sometimes scope distance is not available.
                       : RandInt(20));
     E.setSemaSaysInScope(FlipCoin(0.5));      // Boolean.
@@ -56,7 +56,6 @@
     E.setHadContextType(FlipCoin(0.6));       // Boolean.
     E.setHadSymbolType(FlipCoin(0.6));        // Boolean.
     E.setTypeMatchesPreferred(FlipCoin(0.5)); // Boolean.
-    E.setFilterLength(RandInt(15));
     Examples.push_back(E);
   }
   return Examples;
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to