kdevplatform/language/duchain
specializationstore.cpp
Go to the documentation of this file.
48 QHash<DeclarationId, IndexedInstantiationInformation>::const_iterator it = m_specializations.constFind(declaration);
57 QHash<DeclarationId, IndexedInstantiationInformation>::iterator it = m_specializations.find(declaration);
67 Declaration* SpecializationStore::applySpecialization(Declaration* declaration, TopDUContext* source,
IndexedInstantiationInformation get(const DeclarationId &declaration)
Gets the registered specialization for the given declaration-id, or zero.
Definition: specializationstore.cpp:46
static SpecializationStore & self()
Definition: specializationstore.cpp:33
Represents a single declaration in a definition-use chain.
Definition: declaration.h:51
KDevelop::Declaration * applySpecialization(KDevelop::Declaration *declaration, KDevelop::TopDUContext *source, bool recursive=true)
Applies the known specializations for the given declaration using the Declaration::specialize() funct...
Definition: specializationstore.cpp:67
virtual DUContext * specialize(const IndexedInstantiationInformation &specialization, const TopDUContext *topContext, int upDistance=0)
Retrieve the context which is specialized with the given specialization as seen from the given topCon...
Definition: ducontext.cpp:1200
The top context in a definition-use chain for one source file.
Definition: topducontext.h:113
DUContext * context() const
Access the parent context of this declaration.
Definition: declaration.cpp:279
virtual DeclarationId id(bool forceDirect=false) const
Definition: declaration.cpp:564
This class allows dynamic management of "current" specializations for declarations.
Definition: specializationstore.h:41
Definition: abstractfunctiondeclaration.cpp:27
A single context in source code, represented as a node in a directed acyclic graph.
Definition: ducontext.h:72
DUContext * internalContext() const
Retrieve the context that is opened by this declaration, if one exists.
Definition: declaration.cpp:425
Declaration * owner() const
If this context was opened by a declaration or definition, this returns that item.
Definition: ducontext.cpp:486
void set(const DeclarationId &declaration, const IndexedInstantiationInformation &specialization)
Adds/updates the current specialization for the given declaration-id.
Definition: specializationstore.cpp:39
virtual Declaration * specialize(const IndexedInstantiationInformation &specialization, const TopDUContext *topContext, int upDistance=0)
Retrieve the declaration which is specialized with the given specialization index as seen from topCon...
Definition: declaration.cpp:259
DUContext * parentContext() const
Returns the immediate parent context of this context.
Definition: ducontext.cpp:512
This file is part of the KDE documentation.
Documentation copyright © 1996-2021 The KDE developers.
Generated on Tue Jan 19 2021 23:36:33 by doxygen 1.8.16 written by Dimitri van Heesch, © 1997-2006
Documentation copyright © 1996-2021 The KDE developers.
Generated on Tue Jan 19 2021 23:36:33 by doxygen 1.8.16 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.