summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--clang-tools-extra/clangd/index/dex/PostingList.h2
-rw-r--r--clang-tools-extra/clangd/index/dex/Token.h11
2 files changed, 7 insertions, 6 deletions
diff --git a/clang-tools-extra/clangd/index/dex/PostingList.h b/clang-tools-extra/clangd/index/dex/PostingList.h
index 418e4c729e8..a09871f2c07 100644
--- a/clang-tools-extra/clangd/index/dex/PostingList.h
+++ b/clang-tools-extra/clangd/index/dex/PostingList.h
@@ -32,7 +32,7 @@
namespace clang {
namespace clangd {
namespace dex {
-struct Token;
+class Token;
/// NOTE: This is an implementation detail.
///
diff --git a/clang-tools-extra/clangd/index/dex/Token.h b/clang-tools-extra/clangd/index/dex/Token.h
index 37859bcf1f2..447aee22758 100644
--- a/clang-tools-extra/clangd/index/dex/Token.h
+++ b/clang-tools-extra/clangd/index/dex/Token.h
@@ -37,7 +37,8 @@ namespace dex {
///
/// Tokens can be used to perform more sophisticated search queries by
/// constructing complex iterator trees.
-struct Token {
+class Token {
+public:
/// Kind specifies Token type which defines semantics for the internal
/// representation. Each Kind has different representation stored in Data
/// field.
@@ -76,10 +77,6 @@ struct Token {
return TokenKind == Other.TokenKind && Data == Other.Data;
}
- /// Representation which is unique among Token with the same Kind.
- std::string Data;
- Kind TokenKind;
-
friend llvm::raw_ostream &operator<<(llvm::raw_ostream &OS, const Token &T) {
switch (T.TokenKind) {
case Kind::Trigram:
@@ -102,6 +99,10 @@ struct Token {
}
private:
+ /// Representation which is unique among Token with the same Kind.
+ std::string Data;
+ Kind TokenKind;
+
friend llvm::hash_code hash_value(const Token &Token) {
return llvm::hash_combine(static_cast<int>(Token.TokenKind), Token.Data);
}
OpenPOWER on IntegriCloud