ioeric added inline comments.

================
Comment at: clangd/index/Index.h:430
   ///
-  /// The global scope is "", a top level scope is "foo::", etc.
+  /// The global scope is "", a top level scope is "foo::", etc. "*" is
+  /// wildcard.
----------------
sammccall wrote:
> I'm not a big fan of this magic value, it seems too easy to forget to handle.
> Especially since we have a lot of existing code that touches this interface, 
> and we may forget to check some of it.
> 
> I suggest making this a separate boolean field `AnyScope`, with a comment 
> that scopes explicitly listed will be ranked higher.
> We can probably also remove the "If this is empty" special case from `Scopes` 
> now too, as the old behavior can be achieved by setting `Scopes = {}; 
> AnyScope = true;`
sounds good.

> We can probably also remove the "If this is empty" special case from Scopes 
> now too, as the old behavior can be achieved by setting Scopes = {}; AnyScope 
> = true;
I think this is a good idea. Unfortunately, there seem to be many tests that 
rely on the old behavior. I'll add a FIXME and do it in followup patch.


================
Comment at: clangd/index/Index.h:432
+  /// wildcard.
+  /// FIXME: support assigning different weight to each scope.
   std::vector<std::string> Scopes;
----------------
sammccall wrote:
> May not want a heavyweight API with explicit weights...
> 
> I think what we really **need** here is the ability to weight 
> `clang::clangd::` > `clang::` > `` when you're in the scope of namespace 
> clangd.
> 
> We could just say something like "the primary scope should come first" and do 
> some FileDistance-like penalizing of the others...
Changed the wording of `FIXME`.

> I think what we really need here is the ability to weight clang::clangd:: > 
> clang:: > `` when you're in the scope of namespace clangd.
It's unclear what this would mean for scopes from `using-namespace` directives. 
But we can revisit when we get there.


Repository:
  rCTE Clang Tools Extra

https://reviews.llvm.org/D52364



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

Reply via email to