From 4cc9dda99434fbfb439ccb80040fa5080ea80625 Mon Sep 17 00:00:00 2001 From: Fangrui Song Date: Sun, 10 Mar 2019 08:55:01 -0700 Subject: [PATCH] Add initialization option index.name.suppressUnwrittenScope (default: true) --- src/config.hh | 9 +++++++-- src/indexer.cc | 1 + 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/config.hh b/src/config.hh index 9785c3c8..cad8c342 100644 --- a/src/config.hh +++ b/src/config.hh @@ -273,6 +273,10 @@ struct Config { std::vector multiVersionBlacklist; std::vector multiVersionWhitelist; + struct Name { + bool suppressUnwrittenScope = true; + } name; + // Allow indexing on textDocument/didChange. // May be too slow for big projects, so it is off by default. bool onChange = false; @@ -335,10 +339,11 @@ REFLECT_STRUCT(Config::Completion, caseSensitivity, detailedLabel, REFLECT_STRUCT(Config::Diagnostics, blacklist, onChange, onOpen, onSave, spellChecking, whitelist) REFLECT_STRUCT(Config::Highlight, largeFileSize, lsRanges, blacklist, whitelist) +REFLECT_STRUCT(Config::Index::Name, suppressUnwrittenScope); REFLECT_STRUCT(Config::Index, blacklist, comments, initialBlacklist, initialWhitelist, maxInitializerLines, multiVersion, - multiVersionBlacklist, multiVersionWhitelist, onChange, threads, - trackDependency, whitelist); + multiVersionBlacklist, multiVersionWhitelist, name, onChange, + threads, trackDependency, whitelist); REFLECT_STRUCT(Config::Request, timeout); REFLECT_STRUCT(Config::Session, maxNum); REFLECT_STRUCT(Config::WorkspaceSymbol, caseSensitivity, maxNum, sort); diff --git a/src/indexer.cc b/src/indexer.cc index ed586912..1e355cf4 100644 --- a/src/indexer.cc +++ b/src/indexer.cc @@ -490,6 +490,7 @@ public: PP.PolishForDeclaration = true; PP.ConstantsAsWritten = true; PP.SuppressTagKeyword = true; + PP.SuppressUnwrittenScope = g_config->index.name.suppressUnwrittenScope; PP.SuppressInitializers = true; PP.FullyQualifiedName = false; return PP;