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

kdevplatform/language/duchain

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

#include <classmemberdeclaration.h>

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

Public Types

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

 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
 
virtual QString toString () const
 
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
 

Protected Member Functions

 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)
 

Additional Inherited Members

- Protected Attributes inherited from KDevelop::DUChainBase
DUChainBaseData * d_ptr
 

Detailed Description

Represents a single class member definition in a definition-use chain.

Definition at line 32 of file classmemberdeclaration.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
Identity 

Definition at line 96 of file classmemberdeclaration.h.

◆ StorageSpecifier

enum KDevelop::ClassMemberDeclaration::StorageSpecifier
Enumerator
StaticSpecifier 

indicates static member

AutoSpecifier 

indicates automatic determination of member access

FriendSpecifier 

indicates friend member

ExternSpecifier 

indicates external declaration

RegisterSpecifier 

indicates register

MutableSpecifier 

indicates a mutable member

Definition at line 46 of file classmemberdeclaration.h.

Constructor & Destructor Documentation

◆ ClassMemberDeclaration() [1/4]

KDevelop::ClassMemberDeclaration::ClassMemberDeclaration ( const ClassMemberDeclaration &  rhs)

Definition at line 41 of file classmemberdeclaration.cpp.

◆ ClassMemberDeclaration() [2/4]

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

Definition at line 53 of file classmemberdeclaration.cpp.

◆ ClassMemberDeclaration() [3/4]

KDevelop::ClassMemberDeclaration::ClassMemberDeclaration ( ClassMemberDeclarationData &  dd)
explicit

Definition at line 66 of file classmemberdeclaration.cpp.

◆ ~ClassMemberDeclaration()

KDevelop::ClassMemberDeclaration::~ClassMemberDeclaration ( )
override

Definition at line 71 of file classmemberdeclaration.cpp.

◆ ClassMemberDeclaration() [4/4]

KDevelop::ClassMemberDeclaration::ClassMemberDeclaration ( ClassMemberDeclarationData &  dd,
const RangeInRevision &  range 
)
protected

Definition at line 61 of file classmemberdeclaration.cpp.

Member Function Documentation

◆ accessPolicy()

Declaration::AccessPolicy KDevelop::ClassMemberDeclaration::accessPolicy ( ) const

Definition at line 135 of file classmemberdeclaration.cpp.

◆ bitOffsetOf()

int64_t KDevelop::ClassMemberDeclaration::bitOffsetOf ( ) const
Returns
The offset of the field in bits or -1 if unknown or not applicable.

Definition at line 156 of file classmemberdeclaration.cpp.

◆ bitWidth()

int KDevelop::ClassMemberDeclaration::bitWidth ( ) const
Returns
The width in bits or -1 if unknown or not applicable.

Definition at line 166 of file classmemberdeclaration.cpp.

◆ isAuto()

bool KDevelop::ClassMemberDeclaration::isAuto ( ) const

Definition at line 85 of file classmemberdeclaration.cpp.

◆ isExtern()

bool KDevelop::ClassMemberDeclaration::isExtern ( ) const

Definition at line 115 of file classmemberdeclaration.cpp.

◆ isFriend()

bool KDevelop::ClassMemberDeclaration::isFriend ( ) const

Definition at line 95 of file classmemberdeclaration.cpp.

◆ isMutable()

bool KDevelop::ClassMemberDeclaration::isMutable ( ) const

Definition at line 125 of file classmemberdeclaration.cpp.

◆ isRegister()

bool KDevelop::ClassMemberDeclaration::isRegister ( ) const

Definition at line 105 of file classmemberdeclaration.cpp.

◆ isStatic()

bool KDevelop::ClassMemberDeclaration::isStatic ( ) const

Definition at line 75 of file classmemberdeclaration.cpp.

◆ operator=()

ClassMemberDeclaration& KDevelop::ClassMemberDeclaration::operator= ( const ClassMemberDeclaration &  rhs)
delete

◆ setAccessPolicy()

void KDevelop::ClassMemberDeclaration::setAccessPolicy ( Declaration::AccessPolicy  accessPolicy)

Definition at line 140 of file classmemberdeclaration.cpp.

◆ setAuto()

void KDevelop::ClassMemberDeclaration::setAuto ( bool  isAuto)

Definition at line 90 of file classmemberdeclaration.cpp.

◆ setBitOffsetOf()

void KDevelop::ClassMemberDeclaration::setBitOffsetOf ( int64_t  bitOffsetOf)

Set the offset to given number of bits.

Use -1 to represent unknown offset.

Definition at line 161 of file classmemberdeclaration.cpp.

◆ setBitWidth()

void KDevelop::ClassMemberDeclaration::setBitWidth ( int  bitWidth)

Set the width to given number of bits.

Use -1 to represent unknown offset.

Definition at line 171 of file classmemberdeclaration.cpp.

◆ setExtern()

void KDevelop::ClassMemberDeclaration::setExtern ( bool  isExtern)

Definition at line 120 of file classmemberdeclaration.cpp.

◆ setFriend()

void KDevelop::ClassMemberDeclaration::setFriend ( bool  isFriend)

Definition at line 100 of file classmemberdeclaration.cpp.

◆ setMutable()

void KDevelop::ClassMemberDeclaration::setMutable ( bool  isMutable)

Definition at line 130 of file classmemberdeclaration.cpp.

◆ setRegister()

void KDevelop::ClassMemberDeclaration::setRegister ( bool  isRegister)

Definition at line 110 of file classmemberdeclaration.cpp.

◆ setStatic()

void KDevelop::ClassMemberDeclaration::setStatic ( bool  isStatic)

Definition at line 80 of file classmemberdeclaration.cpp.

◆ setStorageSpecifiers()

void KDevelop::ClassMemberDeclaration::setStorageSpecifiers ( StorageSpecifiers  specifiers)

Definition at line 145 of file classmemberdeclaration.cpp.


The documentation for this class was generated from the following files:
  • classmemberdeclaration.h
  • classmemberdeclaration.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