kdevplatform/language/duchain
#include <typeregister.h>

Public Member Functions | |
void | callDestructor (AbstractTypeData *data) const override |
void | copy (const AbstractTypeData &from, AbstractTypeData &to, bool constant) const override |
AbstractType * | create (AbstractTypeData *data) const override |
void | destroyData (AbstractTypeData *data) const |
uint | dynamicSize (const AbstractTypeData &data) const override |
![]() | |
virtual | ~AbstractTypeFactory () |
Detailed Description
template<class T, class Data = typename T::Data>
class KDevelop::TypeFactory< T, Data >
Template class to implement factories for each AbstractType subclass you want to instantiate.
Definition at line 80 of file typeregister.h.
Member Function Documentation
◆ callDestructor()
|
inlineoverridevirtual |
Call the destructor of the data-type.
Implements KDevelop::AbstractTypeFactory.
Definition at line 116 of file typeregister.h.
◆ copy()
|
inlineoverridevirtual |
Copy contents of type-data from one location to another.
- Parameters
-
from data to copy from to data to copy to. This data must not be initialized yet (the constructor must not have been called yet) constant set to true if to is to be a static unchangeable data type (eg. in the type-repository), or false if to is to be a dynamic changeable type data.
Implements KDevelop::AbstractTypeFactory.
Definition at line 93 of file typeregister.h.
◆ create()
|
inlineoverridevirtual |
Create a new type for the given data.
- Parameters
-
data Data to assign to the new type. The data type must match the class type.
Implements KDevelop::AbstractTypeFactory.
Definition at line 84 of file typeregister.h.
◆ destroyData()
|
inline |
Definition at line 110 of file typeregister.h.
◆ dynamicSize()
|
inlineoverridevirtual |
Return the memory size of the given private data, including dynamic data.
- Parameters
-
data data structure
- Returns
- the size in memory of the data.
Implements KDevelop::AbstractTypeFactory.
Definition at line 122 of file typeregister.h.
The documentation for this class was generated from the following file:
Documentation copyright © 1996-2021 The KDE developers.
Generated on Thu Mar 4 2021 23:31:18 by doxygen 1.8.16 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.