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

kdevelop/kdevplatform/language/duchain

  • KDevelop
  • QualifiedIdentifier
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
KDevelop::QualifiedIdentifier Class Reference

#include <identifier.h>

Public Member Functions

 QualifiedIdentifier (const QString &id, bool isExpression=false)
 
 QualifiedIdentifier (const Identifier &id)
 
 QualifiedIdentifier (const QualifiedIdentifier &id)
 
 QualifiedIdentifier (uint index)
 
 QualifiedIdentifier ()
 
 QualifiedIdentifier (QualifiedIdentifier &&rhs) Q_DECL_NOEXCEPT
 
 ~QualifiedIdentifier ()
 
Identifier at (int i) const
 
bool beginsWith (const QualifiedIdentifier &other) const
 
void clear ()
 
int count () const
 
bool explicitlyGlobal () const
 
Identifier first () const
 
uint hash () const
 
uint index () const
 
IndexedIdentifier indexedAt (int i) const
 
IndexedIdentifier indexedFirst () const
 
IndexedIdentifier indexedLast () const
 
bool inRepository () const
 
bool isEmpty () const
 
bool isExpression () const
 
bool isQualified () const
 
Identifier last () const
 
QualifiedIdentifier left (int len) const
 
QualifiedIdentifier merge (const QualifiedIdentifier &base) const
 
QualifiedIdentifier mid (int pos, int len=-1) const
 
bool operator!= (const QualifiedIdentifier &rhs) const
 
QualifiedIdentifier operator+ (const QualifiedIdentifier &rhs) const
 
QualifiedIdentifier operator+ (const Identifier &rhs) const
 
QualifiedIdentifier operator+ (const IndexedIdentifier &rhs) const
 
QualifiedIdentifier & operator+= (const QualifiedIdentifier &rhs)
 
QualifiedIdentifier & operator+= (const Identifier &rhs)
 
QualifiedIdentifier & operator+= (const IndexedIdentifier &rhs)
 
QualifiedIdentifier & operator= (const QualifiedIdentifier &rhs)
 
QualifiedIdentifier & operator= (QualifiedIdentifier &&rhs) Q_DECL_NOEXCEPT
 
bool operator== (const QualifiedIdentifier &rhs) const
 
void pop ()
 
void push (const IndexedIdentifier &id)
 
void push (const Identifier &id)
 
void push (const QualifiedIdentifier &id)
 
void setExplicitlyGlobal (bool eg)
 
void setIsExpression (bool)
 
Identifier top () const
 
QString toString (IdentifierStringFormattingOptions options=NoOptions) const
 
QStringList toStringList (IdentifierStringFormattingOptions options=NoOptions) const
 

Protected Member Functions

void makeConstant () const
 
void prepareWrite ()
 
bool sameIdentifiers (const QualifiedIdentifier &rhs) const
 

Protected Attributes

union {
   const
QualifiedIdentifierPrivate
< false > *   cd
 
   QualifiedIdentifierPrivate
< true > *   dd
 
}; 
 
uint m_index
 

Detailed Description

Represents a qualified identifier.

QualifiedIdentifier has it's hash-values stored, so using the hash-values is very efficient.

Definition at line 245 of file identifier.h.

Constructor & Destructor Documentation

KDevelop::QualifiedIdentifier::QualifiedIdentifier ( const QString &  id,
bool  isExpression = false 
)
explicit

Definition at line 666 of file identifier.cpp.

KDevelop::QualifiedIdentifier::QualifiedIdentifier ( const Identifier &  id)
explicit

Definition at line 696 of file identifier.cpp.

KDevelop::QualifiedIdentifier::QualifiedIdentifier ( const QualifiedIdentifier &  id)

Definition at line 721 of file identifier.cpp.

KDevelop::QualifiedIdentifier::QualifiedIdentifier ( uint  index)
explicit

Definition at line 660 of file identifier.cpp.

KDevelop::QualifiedIdentifier::QualifiedIdentifier ( )

Definition at line 715 of file identifier.cpp.

KDevelop::QualifiedIdentifier::QualifiedIdentifier ( QualifiedIdentifier &&  rhs)

Definition at line 732 of file identifier.cpp.

KDevelop::QualifiedIdentifier::~QualifiedIdentifier ( )

Definition at line 772 of file identifier.cpp.

Member Function Documentation

Identifier KDevelop::QualifiedIdentifier::at ( int  i) const

Definition at line 1109 of file identifier.cpp.

bool KDevelop::QualifiedIdentifier::beginsWith ( const QualifiedIdentifier &  other) const

Definition at line 925 of file identifier.cpp.

void KDevelop::QualifiedIdentifier::clear ( )

Definition at line 1033 of file identifier.cpp.

int KDevelop::QualifiedIdentifier::count ( ) const

Definition at line 1049 of file identifier.cpp.

bool KDevelop::QualifiedIdentifier::explicitlyGlobal ( ) const
Todo:
Remove this flag

Definition at line 884 of file identifier.cpp.

Identifier KDevelop::QualifiedIdentifier::first ( ) const

Definition at line 1057 of file identifier.cpp.

uint KDevelop::QualifiedIdentifier::hash ( ) const

The hash does not respect explicitlyGlobal, only the real scope.

Definition at line 959 of file identifier.cpp.

uint KDevelop::QualifiedIdentifier::index ( ) const

Definition at line 621 of file identifier.cpp.

IndexedIdentifier KDevelop::QualifiedIdentifier::indexedAt ( int  i) const

Definition at line 1114 of file identifier.cpp.

IndexedIdentifier KDevelop::QualifiedIdentifier::indexedFirst ( ) const

Definition at line 1062 of file identifier.cpp.

IndexedIdentifier KDevelop::QualifiedIdentifier::indexedLast ( ) const

Definition at line 1075 of file identifier.cpp.

bool KDevelop::QualifiedIdentifier::inRepository ( ) const
Returns
true if this qualified identifier is already in the persistent identifier repository

Definition at line 652 of file identifier.cpp.

bool KDevelop::QualifiedIdentifier::isEmpty ( ) const

Definition at line 1041 of file identifier.cpp.

bool KDevelop::QualifiedIdentifier::isExpression ( ) const

A flag that can be set by setIsExpression.

Definition at line 868 of file identifier.cpp.

bool KDevelop::QualifiedIdentifier::isQualified ( ) const

Definition at line 982 of file identifier.cpp.

Identifier KDevelop::QualifiedIdentifier::last ( ) const

Definition at line 1070 of file identifier.cpp.

QualifiedIdentifier KDevelop::QualifiedIdentifier::left ( int  len) const
inline

Copy the leftmost len number of identifiers.

Parameters
lenThe number of identifiers to copy, or if negative, the number of identifiers to omit from the right

Definition at line 298 of file identifier.h.

void KDevelop::QualifiedIdentifier::makeConstant ( ) const
protected

Definition at line 1125 of file identifier.cpp.

QualifiedIdentifier KDevelop::QualifiedIdentifier::merge ( const QualifiedIdentifier &  base) const
Returns
a QualifiedIdentifier with this one appended to the other.

It is explicitly global if either this or base is.

Definition at line 824 of file identifier.cpp.

QualifiedIdentifier KDevelop::QualifiedIdentifier::mid ( int  pos,
int  len = -1 
) const
Parameters
posPosition where to start the copy.
lenIf this is -1, the whole following part will be returned.

Definition at line 1089 of file identifier.cpp.

bool KDevelop::QualifiedIdentifier::operator!= ( const QualifiedIdentifier &  rhs) const

Definition at line 920 of file identifier.cpp.

QualifiedIdentifier KDevelop::QualifiedIdentifier::operator+ ( const QualifiedIdentifier &  rhs) const

Definition at line 831 of file identifier.cpp.

QualifiedIdentifier KDevelop::QualifiedIdentifier::operator+ ( const Identifier &  rhs) const

Nicer interfaces to merge.

Definition at line 842 of file identifier.cpp.

QualifiedIdentifier KDevelop::QualifiedIdentifier::operator+ ( const IndexedIdentifier &  rhs) const

Definition at line 855 of file identifier.cpp.

QualifiedIdentifier & KDevelop::QualifiedIdentifier::operator+= ( const QualifiedIdentifier &  rhs)

Definition at line 836 of file identifier.cpp.

QualifiedIdentifier & KDevelop::QualifiedIdentifier::operator+= ( const Identifier &  rhs)

Definition at line 849 of file identifier.cpp.

QualifiedIdentifier & KDevelop::QualifiedIdentifier::operator+= ( const IndexedIdentifier &  rhs)

Definition at line 862 of file identifier.cpp.

QualifiedIdentifier & KDevelop::QualifiedIdentifier::operator= ( const QualifiedIdentifier &  rhs)

Definition at line 744 of file identifier.cpp.

QualifiedIdentifier & KDevelop::QualifiedIdentifier::operator= ( QualifiedIdentifier &&  rhs)

Definition at line 757 of file identifier.cpp.

bool KDevelop::QualifiedIdentifier::operator== ( const QualifiedIdentifier &  rhs) const

The comparison-operators do not respect explicitlyGlobal and isExpression, they only respect the real scope.

This is for convenient use in hash-tables etc.

Definition at line 913 of file identifier.cpp.

void KDevelop::QualifiedIdentifier::pop ( )

Pops one identifier from back:

Definition at line 1025 of file identifier.cpp.

void KDevelop::QualifiedIdentifier::prepareWrite ( )
protected

Definition at line 1134 of file identifier.cpp.

void KDevelop::QualifiedIdentifier::push ( const IndexedIdentifier &  id)

Append id to this qualified identifier.

Definition at line 995 of file identifier.cpp.

void KDevelop::QualifiedIdentifier::push ( const Identifier &  id)

Append id to this qualified identifier.

NOTE: If you have an indexed identifier available, use the above method instead.

Definition at line 987 of file identifier.cpp.

void KDevelop::QualifiedIdentifier::push ( const QualifiedIdentifier &  id)

Append all identifiers of id to this qualified identifier.

Definition at line 1006 of file identifier.cpp.

bool KDevelop::QualifiedIdentifier::sameIdentifiers ( const QualifiedIdentifier &  rhs) const
protected

Definition at line 901 of file identifier.cpp.

void KDevelop::QualifiedIdentifier::setExplicitlyGlobal ( bool  eg)

Definition at line 893 of file identifier.cpp.

void KDevelop::QualifiedIdentifier::setIsExpression ( bool  is)

Set the expression-flag, that can be retrieved by isExpression().

This flag is not respected while creating the hash-value and while operator==() comparison. It is respected while isSame(..) comparison.

Definition at line 876 of file identifier.cpp.

Identifier KDevelop::QualifiedIdentifier::top ( ) const

Definition at line 1084 of file identifier.cpp.

QString KDevelop::QualifiedIdentifier::toString ( IdentifierStringFormattingOptions  options = NoOptions) const

Definition at line 798 of file identifier.cpp.

QStringList KDevelop::QualifiedIdentifier::toStringList ( IdentifierStringFormattingOptions  options = NoOptions) const

Definition at line 778 of file identifier.cpp.

Member Data Documentation

union { ... }
const QualifiedIdentifierPrivate<false>* KDevelop::QualifiedIdentifier::cd
mutable

Definition at line 371 of file identifier.h.

QualifiedIdentifierPrivate<true>* KDevelop::QualifiedIdentifier::dd
mutable

Definition at line 370 of file identifier.h.

uint KDevelop::QualifiedIdentifier::m_index
mutableprotected

Definition at line 368 of file identifier.h.


The documentation for this class was generated from the following files:
  • identifier.h
  • identifier.cpp
This file is part of the KDE documentation.
Documentation copyright © 1996-2019 The KDE developers.
Generated on Mon Dec 9 2019 02:48:10 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

kdevelop/kdevplatform/language/duchain

Skip menu "kdevelop/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