logic: improved indexer coverage for using decls, using directives

* moved source code for solving names of NestedNameSpecifiers to new CxxSpecifierNameResolver.
* implemented recording of UsingDirectives.
* implemented using file as context for using directives and using directive decls if no other context is available.
* re-implemented recording of the auto keyword
This commit is contained in:
malte_langkabel
2016-11-14 13:16:20 +01:00
parent 2b830fd2c0
commit 9ba3cf165c
11 changed files with 191 additions and 61 deletions
@@ -0,0 +1,17 @@
#ifndef CXX_SPECIFIER_NAME_RESOLVER_H
#define CXX_SPECIFIER_NAME_RESOLVER_H
#include "data/parser/cxx/name_resolver/CxxNameResolver.h"
#include "data/type/DataType.h"
class CxxSpecifierNameResolver: public CxxNameResolver
{
public:
CxxSpecifierNameResolver();
CxxSpecifierNameResolver(std::vector<const clang::Decl*> ignoredContextDecls);
virtual ~CxxSpecifierNameResolver();
NameHierarchy getNameHierarchy(const clang::NestedNameSpecifier* nestedNameSpecifier);
};
#endif // CXX_SPECIFIER_NAME_RESOLVER_H