1 /*
2     SPDX-FileCopyrightText: 2012 Olivier de Gaalon <olivier.jg@gmail.com>
3 
4     SPDX-License-Identifier: LGPL-2.0-only
5 */
6 
7 #ifndef KDEVPLATFORM_DECLARATIONVALIDATOR_H
8 #define KDEVPLATFORM_DECLARATIONVALIDATOR_H
9 
10 #include <tests/testsexport.h>
11 
12 #include "language/duchain/ducontext.h"
13 
14 namespace KDevelop {
15 class DeclarationValidatorPrivate;
16 
17 class KDEVPLATFORMTESTS_EXPORT DeclarationValidator
18     : public DUChainVisitor
19 {
20 public:
21     DeclarationValidator();
22     ~DeclarationValidator() override;
23 
24     virtual bool testsPassed() const;
25     void visit(DUContext*) override;
26     void visit(Declaration* declaration) override;
27 
28 private:
29     Q_DISABLE_COPY(DeclarationValidator)
30     const QScopedPointer<class DeclarationValidatorPrivate> d_ptr;
31     Q_DECLARE_PRIVATE(DeclarationValidator)
32 };
33 }
34 #endif //KDEVPLATFORM_DECLARATIONVALIDATOR_H
35