[clang-tools-extra] [clangd] Add container field to remote index Refs grpc method (PR #71605)

2025-04-27 Thread Thomas Du Plessis via cfe-commits

tdupes wrote:

done

https://github.com/llvm/llvm-project/pull/71605
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang-tools-extra] [clangd] Add container field to remote index Refs grpc method (PR #71605)

2025-04-27 Thread Thomas Du Plessis via cfe-commits

https://github.com/tdupes updated 
https://github.com/llvm/llvm-project/pull/71605

>From 66fe31636d68c7200515a5d3a9e60d20334b60dd Mon Sep 17 00:00:00 2001
From: dup 
Date: Fri, 3 Nov 2023 09:03:24 -0700
Subject: [PATCH] Add container field to remote index Refs grpc method

---
 clang-tools-extra/clangd/index/YAMLSerialization.cpp  | 1 +
 clang-tools-extra/clangd/index/remote/Index.proto | 1 +
 .../clangd/index/remote/marshalling/Marshalling.cpp   | 4 
 .../clangd/unittests/remote/MarshallingTests.cpp  | 1 +
 4 files changed, 7 insertions(+)

diff --git a/clang-tools-extra/clangd/index/YAMLSerialization.cpp 
b/clang-tools-extra/clangd/index/YAMLSerialization.cpp
index 214a847b5eddb..495d8a2ff487a 100644
--- a/clang-tools-extra/clangd/index/YAMLSerialization.cpp
+++ b/clang-tools-extra/clangd/index/YAMLSerialization.cpp
@@ -319,6 +319,7 @@ template <> struct MappingTraits {
 MappingNormalization NKind(IO, R.Kind);
 IO.mapRequired("Kind", NKind->Kind);
 IO.mapRequired("Location", R.Location);
+IO.mapOptional("Container", R.Container);
   }
 };
 
diff --git a/clang-tools-extra/clangd/index/remote/Index.proto 
b/clang-tools-extra/clangd/index/remote/Index.proto
index 3e39724e32086..d274f6458164a 100644
--- a/clang-tools-extra/clangd/index/remote/Index.proto
+++ b/clang-tools-extra/clangd/index/remote/Index.proto
@@ -81,6 +81,7 @@ message Symbol {
 message Ref {
   optional SymbolLocation location = 1;
   optional uint32 kind = 2;
+  optional string container = 3;
 }
 
 message SymbolInfo {
diff --git a/clang-tools-extra/clangd/index/remote/marshalling/Marshalling.cpp 
b/clang-tools-extra/clangd/index/remote/marshalling/Marshalling.cpp
index d8d3b64a5ac18..aa607926a6d51 100644
--- a/clang-tools-extra/clangd/index/remote/marshalling/Marshalling.cpp
+++ b/clang-tools-extra/clangd/index/remote/marshalling/Marshalling.cpp
@@ -203,6 +203,9 @@ llvm::Expected Marshaller::fromProtobuf(const 
Ref &Message) {
 return Location.takeError();
   Result.Location = *Location;
   Result.Kind = static_cast(Message.kind());
+  auto ContainerID = SymbolID::fromStr(Message.container());
+  if (ContainerID)
+Result.Container = *ContainerID;
   return Result;
 }
 
@@ -340,6 +343,7 @@ llvm::Expected Marshaller::toProtobuf(const 
clangd::Ref &From) {
   if (!Location)
 return Location.takeError();
   *Result.mutable_location() = *Location;
+  Result.set_container(From.Container.str());
   return Result;
 }
 
diff --git a/clang-tools-extra/clangd/unittests/remote/MarshallingTests.cpp 
b/clang-tools-extra/clangd/unittests/remote/MarshallingTests.cpp
index a2b31698a059a..85e79eae331bc 100644
--- a/clang-tools-extra/clangd/unittests/remote/MarshallingTests.cpp
+++ b/clang-tools-extra/clangd/unittests/remote/MarshallingTests.cpp
@@ -223,6 +223,7 @@ TEST(RemoteMarshallingTest, RefSerialization) {
   Location.FileURI = testPathURI(
   "llvm-project/llvm/clang-tools-extra/clangd/Protocol.h", Strings);
   Ref.Location = Location;
+  Ref.Container = llvm::cantFail(SymbolID::fromStr("0001"));
 
   Marshaller ProtobufMarshaller(testPath("llvm-project/"),
 testPath("llvm-project/"));

___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[clang-tools-extra] [clangd] Add container field to remote index Refs grpc method (PR #71605)

2025-04-26 Thread Thomas Du Plessis via cfe-commits

tdupes wrote:

Yes this is good to go

https://github.com/llvm/llvm-project/pull/71605
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits