File indexing completed on 2024-05-12 04:39:26
0001 /* 0002 SPDX-FileCopyrightText: 2014 Aleix Pol <aleixpol@kde.org> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #ifndef CONTEXTBUILDER_H 0008 #define CONTEXTBUILDER_H 0009 0010 #include <language/duchain/builders/abstractcontextbuilder.h> 0011 #include <cmakelistsparser.h> 0012 0013 using CMakeContentIterator = QVectorIterator<CMakeFunctionDesc>; 0014 0015 class ContextBuilder : public KDevelop::AbstractContextBuilder<CMakeContentIterator, CMakeFunctionDesc> 0016 { 0017 public: 0018 KDevelop::DUContext* contextFromNode(CMakeContentIterator* node) override; 0019 KDevelop::RangeInRevision editorFindRange(CMakeContentIterator* fromNode, CMakeContentIterator* toNode) override; 0020 KDevelop::QualifiedIdentifier identifierForNode(CMakeFunctionDesc* node) override; 0021 void setContextOnNode(CMakeContentIterator* node, KDevelop::DUContext* context) override; 0022 KDevelop::TopDUContext* newTopContext(const KDevelop::RangeInRevision& range, KDevelop::ParsingEnvironmentFile* file = nullptr) override; 0023 }; 0024 0025 #endif // CONTEXTBUILDER_H