• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdevelop API Reference
  • KDE Home
  • Contact Us
 

kdevplatform/language/duchain

  • KDevelop
  • ClassDeclaration
Public Types | Public Member Functions | List of all members
KDevelop::ClassDeclaration Class Reference

#include <classdeclaration.h>

Inheritance diagram for KDevelop::ClassDeclaration:
Inheritance graph
[legend]

Public Types

enum  { Identity = 17 }
 
- Public Types inherited from KDevelop::ClassMemberDeclaration
enum  { Identity = 9 }
 
enum  StorageSpecifier {
  StaticSpecifier = 0x1, AutoSpecifier = 0x2, FriendSpecifier = 0x4, ExternSpecifier = 0x8,
  RegisterSpecifier = 0x10, MutableSpecifier = 0x20
}
 
- Public Types inherited from KDevelop::Declaration
enum  { Identity = 7 }
 
enum  AccessPolicy : quint8 { Public, Protected, Private, DefaultAccess }
 
enum  Kind : quint8 {
  Type, Instance, NamespaceAlias, Alias,
  Namespace, Import, Macro
}
 
- Public Types inherited from KDevelop::DUChainBase
enum  { Identity = 1 }
 

Public Member Functions

 ClassDeclaration (ClassDeclarationData &data)
 
 ClassDeclaration (ClassDeclarationData &data, const KDevelop::RangeInRevision &range, KDevelop::DUContext *context)
 
 ClassDeclaration (const ClassDeclaration &rhs)
 
 ClassDeclaration (const KDevelop::RangeInRevision &range, KDevelop::DUContext *context)
 
 ~ClassDeclaration () override
 
void addBaseClass (const BaseClassInstance &klass)
 
const BaseClassInstance * baseClasses () const
 
uint baseClassesSize () const
 
ClassDeclarationData::ClassModifier classModifier () const
 
ClassDeclarationData::ClassType classType () const
 
void clearBaseClasses ()
 
bool isPublicBaseClass (ClassDeclaration *base, const KDevelop::TopDUContext *topContext, int *baseConversionLevels=nullptr) const
 
void replaceBaseClass (uint n, const BaseClassInstance &klass)
 
void setClassModifier (ClassDeclarationData::ClassModifier modifier)
 
void setClassType (ClassDeclarationData::ClassType type)
 
QString toString () const override
 
- Public Member Functions inherited from KDevelop::ClassMemberDeclaration
 ClassMemberDeclaration (ClassMemberDeclarationData &dd)
 
 ClassMemberDeclaration (const ClassMemberDeclaration &rhs)
 
 ClassMemberDeclaration (const RangeInRevision &range, DUContext *context)
 
 ~ClassMemberDeclaration () override
 
AccessPolicy accessPolicy () const
 
int64_t bitOffsetOf () const
 
int bitWidth () const
 
bool isAuto () const
 
bool isExtern () const
 
bool isFriend () const
 
bool isMutable () const
 
bool isRegister () const
 
bool isStatic () const
 
ClassMemberDeclaration & operator= (const ClassMemberDeclaration &rhs)=delete
 
void setAccessPolicy (AccessPolicy accessPolicy)
 
void setAuto (bool isAuto)
 
void setBitOffsetOf (int64_t bitOffsetOf)
 
void setBitWidth (int bitWidth)
 
void setExtern (bool isExtern)
 
void setFriend (bool isFriend)
 
void setMutable (bool isMutable)
 
void setRegister (bool isRegister)
 
void setStatic (bool isStatic)
 
void setStorageSpecifiers (StorageSpecifiers specifiers)
 
- Public Member Functions inherited from KDevelop::Declaration
 Declaration (const Declaration &rhs)
 
 Declaration (const RangeInRevision &range, DUContext *parentContext)
 
 Declaration (DeclarationData &dd)
 
 ~Declaration () override
 
AbstractType::Ptr abstractType () const
 
virtual void activateSpecialization ()
 
virtual uint additionalIdentity () const
 
void allocateOwnIndex ()
 
bool alwaysForceDirect () const
 
void clearOwnIndex ()
 
Declaration * clone () const
 
QByteArray comment () const
 
DUContext * context () const
 
bool equalQualifiedIdentifier (const Declaration *rhs) const
 
bool hasUses () const
 
virtual DeclarationId id (bool forceDirect=false) const
 
Identifier identifier () const
 
const IndexedIdentifier & indexedIdentifier () const
 
IndexedType indexedType () const
 
virtual bool inDUChain () const
 
bool inSymbolTable () const
 
DUContext * internalContext () const
 
bool isAnonymous () const
 
bool isAutoDeclaration () const
 
bool isDefinition () const
 
bool isDeprecated () const
 
bool isExplicitlyDeleted () const
 
bool isExplicitlyTyped () const
 
virtual bool isForwardDeclaration () const
 
virtual bool isFunctionDeclaration () const
 
bool isTypeAlias () const
 
Kind kind () const
 
Declaration * logicalDeclaration (const TopDUContext *topContext)
 
const Declaration * logicalDeclaration (const TopDUContext *topContext) const
 
virtual DUContext * logicalInternalContext (const TopDUContext *topContext) const
 
Declaration & operator= (const Declaration &rhs)=delete
 
bool operator== (const Declaration &other) const
 
uint ownIndex () const
 
QualifiedIdentifier qualifiedIdentifier () const
 
virtual void setAbstractType (AbstractType::Ptr type)
 
void setAlwaysForceDirect (bool direct)
 
void setAutoDeclaration (bool _auto)
 
void setComment (const QByteArray &str)
 
void setComment (const QString &str)
 
void setContext (DUContext *context, bool anonymous=false)
 
void setDeclarationIsDefinition (bool dd)
 
void setDeprecated (bool deprecated)
 
void setExplicitlyDeleted (bool deleted)
 
void setExplicitlyTyped (bool explicitlyTyped)
 
void setIdentifier (const Identifier &identifier)
 
virtual void setInSymbolTable (bool inSymbolTable)
 
void setInternalContext (DUContext *context)
 
void setIsTypeAlias (bool typeAlias)
 
void setKind (Kind kind)
 
template<class T >
void setType (TypePtr< T > type)
 
virtual IndexedInstantiationInformation specialization () const
 
virtual Declaration * specialize (const IndexedInstantiationInformation &specialization, const TopDUContext *topContext, int upDistance=0)
 
TopDUContext * topContext () const override
 
template<class T >
TypePtr< T > type () const
 
QMap< IndexedString, QVector< RangeInRevision > > uses () const
 
QMap< IndexedString, QVector< KTextEditor::Range > > usesCurrentRevision () const
 
- Public Member Functions inherited from KDevelop::DUChainBase
 DUChainBase (const RangeInRevision &range)
 
 DUChainBase (DUChainBaseData &dd)
 
virtual ~DUChainBase ()
 
PersistentMovingRange::Ptr createRangeMoving () const
 
void makeDynamic ()
 
DUChainBase & operator= (const DUChainBase &rhs)=delete
 
RangeInRevision range () const
 
KTextEditor::Range rangeInCurrentRevision () const
 
virtual void setData (DUChainBaseData *, bool constructorCalled=true)
 
void setRange (const RangeInRevision &range)
 
KTextEditor::Cursor transformFromLocalRevision (const CursorInRevision &cursor) const
 
KTextEditor::Range transformFromLocalRevision (const RangeInRevision &range) const
 
CursorInRevision transformToLocalRevision (const KTextEditor::Cursor &cursor) const
 
RangeInRevision transformToLocalRevision (const KTextEditor::Range &range) const
 
virtual IndexedString url () const
 
const QExplicitlySharedDataPointer< DUChainPointerData > & weakPointer () const
 

Additional Inherited Members

- Protected Member Functions inherited from KDevelop::ClassMemberDeclaration
 ClassMemberDeclaration (ClassMemberDeclarationData &dd, const RangeInRevision &range)
 
- Protected Member Functions inherited from KDevelop::Declaration
 Declaration (DeclarationData &dd, const RangeInRevision &range)
 
bool persistentlyDestroying () const
 
- Protected Member Functions inherited from KDevelop::DUChainBase
 DUChainBase (DUChainBase &rhs)
 
 DUChainBase (DUChainBaseData &dd, const RangeInRevision &range)
 
- Protected Attributes inherited from KDevelop::DUChainBase
DUChainBaseData * d_ptr
 

Detailed Description

Represents a single template-parameter definition.

Definition at line 97 of file classdeclaration.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
Identity 

Definition at line 132 of file classdeclaration.h.

Constructor & Destructor Documentation

◆ ClassDeclaration() [1/4]

KDevelop::ClassDeclaration::ClassDeclaration ( const ClassDeclaration &  rhs)

Definition at line 82 of file classdeclaration.cpp.

◆ ClassDeclaration() [2/4]

KDevelop::ClassDeclaration::ClassDeclaration ( ClassDeclarationData &  data)
explicit

Definition at line 45 of file classdeclaration.cpp.

◆ ClassDeclaration() [3/4]

KDevelop::ClassDeclaration::ClassDeclaration ( const KDevelop::RangeInRevision &  range,
KDevelop::DUContext *  context 
)

Definition at line 31 of file classdeclaration.cpp.

◆ ClassDeclaration() [4/4]

KDevelop::ClassDeclaration::ClassDeclaration ( ClassDeclarationData &  data,
const KDevelop::RangeInRevision &  range,
KDevelop::DUContext *  context 
)

Definition at line 38 of file classdeclaration.cpp.

◆ ~ClassDeclaration()

KDevelop::ClassDeclaration::~ClassDeclaration ( )
override

Definition at line 78 of file classdeclaration.cpp.

Member Function Documentation

◆ addBaseClass()

void KDevelop::ClassDeclaration::addBaseClass ( const BaseClassInstance &  klass)

Definition at line 67 of file classdeclaration.cpp.

◆ baseClasses()

const BaseClassInstance * KDevelop::ClassDeclaration::baseClasses ( ) const

The types this class is based on.

Definition at line 62 of file classdeclaration.cpp.

◆ baseClassesSize()

uint KDevelop::ClassDeclaration::baseClassesSize ( ) const

Count of base-classes.

Definition at line 57 of file classdeclaration.cpp.

◆ classModifier()

ClassDeclarationData::ClassModifier KDevelop::ClassDeclaration::classModifier ( ) const

Definition at line 188 of file classdeclaration.cpp.

◆ classType()

ClassDeclarationData::ClassType KDevelop::ClassDeclaration::classType ( ) const

Definition at line 178 of file classdeclaration.cpp.

◆ clearBaseClasses()

void KDevelop::ClassDeclaration::clearBaseClasses ( )

Definition at line 52 of file classdeclaration.cpp.

◆ isPublicBaseClass()

bool KDevelop::ClassDeclaration::isPublicBaseClass ( ClassDeclaration *  base,
const KDevelop::TopDUContext *  topContext,
int *  baseConversionLevels = nullptr 
) const

Returns whether base is a public base-class of this class.

Parameters
baseConversionLevelsIf nonzero, this will count the distance of the classes.

Definition at line 138 of file classdeclaration.cpp.

◆ replaceBaseClass()

void KDevelop::ClassDeclaration::replaceBaseClass ( uint  n,
const BaseClassInstance &  klass 
)

Definition at line 72 of file classdeclaration.cpp.

◆ setClassModifier()

void KDevelop::ClassDeclaration::setClassModifier ( ClassDeclarationData::ClassModifier  modifier)

Definition at line 193 of file classdeclaration.cpp.

◆ setClassType()

void KDevelop::ClassDeclaration::setClassType ( ClassDeclarationData::ClassType  type)

Definition at line 183 of file classdeclaration.cpp.

◆ toString()

QString KDevelop::ClassDeclaration::toString ( ) const
overridevirtual

Determine this declaration as a string.

Returns
this declaration as a string.

Reimplemented from KDevelop::Declaration.

Definition at line 144 of file classdeclaration.cpp.


The documentation for this class was generated from the following files:
  • classdeclaration.h
  • classdeclaration.cpp
This file is part of the KDE documentation.
Documentation copyright © 1996-2021 The KDE developers.
Generated on Wed Mar 3 2021 00:37:28 by doxygen 1.8.16 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

kdevplatform/language/duchain

Skip menu "kdevplatform/language/duchain"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdevelop API Reference

Skip menu "kdevelop API Reference"
  • kdevplatform
  •   debugger
  •   documentation
  •   interfaces
  •   language
  •     assistant
  •     backgroundparser
  •     checks
  •     classmodel
  •     codecompletion
  •     codegen
  •     duchain
  •     editor
  •     highlighting
  •     interfaces
  •     util
  •   outputview
  •   project
  •   serialization
  •   shell
  •   sublime
  •   tests
  •   util
  •   vcs

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal