Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
QStringHashNode Class Reference

#include <qstringhash_p.h>

+ Inheritance diagram for QStringHashNode:
+ Collaboration diagram for QStringHashNode:

Public Types

enum  Tag { NodeIsCString , NodeIsQString }
 

Public Member Functions

 QStringHashNode ()
 
 QStringHashNode (const QHashedString &key)
 
 QStringHashNode (const QHashedCStringRef &key)
 
 QStringHashNode (const QStringHashNode &o)
 
 ~QStringHashNode ()
 
QHashedString key () const
 
bool isQString () const
 
void setQString (bool v)
 
qsizetype size () const
 
const char * cStrData () const
 
const char16_t * utf16Data () const
 
bool equals (const QV4::Value &string) const
 
bool equals (const QV4::String *string) const
 
bool equals (const QHashedStringRef &string) const
 
bool equals (const QHashedCStringRef &string) const
 

Public Attributes

QTaggedPointer< QStringHashNode, Tagnext
 
qint32 length = 0
 
quint32 hash = 0
 
quint32 symbolId = 0
 
QTypedArrayData< char16_t > * arrayData = nullptr
 
union { 
 
   const char *   ckey = nullptr 
 
   char16_t *   strData 
 
};  
 

Detailed Description

Definition at line 33 of file qstringhash_p.h.

Member Enumeration Documentation

◆ Tag

Enumerator
NodeIsCString 
NodeIsQString 

Definition at line 75 of file qstringhash_p.h.

Constructor & Destructor Documentation

◆ QStringHashNode() [1/4]

QStringHashNode::QStringHashNode ( )
inline

Definition at line 36 of file qstringhash_p.h.

◆ QStringHashNode() [2/4]

QStringHashNode::QStringHashNode ( const QHashedString & key)
inline

Definition at line 40 of file qstringhash_p.h.

References arrayData, Q_ASSERT, QArrayData::ref(), and setQString().

+ Here is the call graph for this function:

◆ QStringHashNode() [3/4]

QStringHashNode::QStringHashNode ( const QHashedCStringRef & key)
inline

Definition at line 51 of file qstringhash_p.h.

◆ QStringHashNode() [4/4]

QStringHashNode::QStringHashNode ( const QStringHashNode & o)
inline

Definition at line 56 of file qstringhash_p.h.

References arrayData, ckey, isQString(), o, QArrayData::ref(), setQString(), and strData.

+ Here is the call graph for this function:

◆ ~QStringHashNode()

QStringHashNode::~QStringHashNode ( )
inline

Definition at line 69 of file qstringhash_p.h.

References arrayData, QTypedArrayData< T >::deallocate(), QArrayData::deref(), and isQString().

+ Here is the call graph for this function:

Member Function Documentation

◆ cStrData()

const char * QStringHashNode::cStrData ( ) const
inline

Definition at line 107 of file qstringhash_p.h.

References ckey.

Referenced by equals(), equals(), equals(), and equals().

+ Here is the caller graph for this function:

◆ equals() [1/4]

bool QStringHashNode::equals ( const QHashedCStringRef & string) const
inline

Definition at line 136 of file qstringhash_p.h.

References QHashedString::compare(), cStrData(), hash, isQString(), and utf16Data().

+ Here is the call graph for this function:

◆ equals() [2/4]

bool QStringHashNode::equals ( const QHashedStringRef & string) const
inline

Definition at line 129 of file qstringhash_p.h.

References QHashedString::compare(), cStrData(), hash, isQString(), and utf16Data().

+ Here is the call graph for this function:

◆ equals() [3/4]

bool QStringHashNode::equals ( const QV4::String * string) const
inline

Definition at line 119 of file qstringhash_p.h.

References cStrData(), hash, isQString(), and utf16Data().

+ Here is the call graph for this function:

◆ equals() [4/4]

bool QStringHashNode::equals ( const QV4::Value & string) const
inline

Definition at line 110 of file qstringhash_p.h.

References cStrData(), isQString(), and utf16Data().

Referenced by QStringHash< T >::findNode().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isQString()

bool QStringHashNode::isQString ( ) const
inline

Definition at line 103 of file qstringhash_p.h.

References next, NodeIsQString, and QTaggedPointer< T, Tag >::tag().

Referenced by QStringHashNode(), ~QStringHashNode(), equals(), equals(), equals(), equals(), and key().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ key()

QHashedString QStringHashNode::key ( ) const
inline

Definition at line 92 of file qstringhash_p.h.

References arrayData, ckey, QString::fromLatin1(), hash, isQString(), QArrayData::ref(), and strData.

+ Here is the call graph for this function:

◆ setQString()

void QStringHashNode::setQString ( bool v)
inline

Definition at line 104 of file qstringhash_p.h.

References next, NodeIsCString, NodeIsQString, and QTaggedPointer< T, Tag >::setTag().

Referenced by QStringHashNode(), QStringHashNode(), and QStringHash< T >::initializeNode().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ size()

qsizetype QStringHashNode::size ( ) const
inline

Definition at line 106 of file qstringhash_p.h.

References length.

◆ utf16Data()

const char16_t * QStringHashNode::utf16Data ( ) const
inline

Definition at line 108 of file qstringhash_p.h.

References strData.

Referenced by equals(), equals(), equals(), and equals().

+ Here is the caller graph for this function:

Member Data Documentation

◆ [union]

union { ... } QStringHashNode

◆ arrayData

QTypedArrayData<char16_t>* QStringHashNode::arrayData = nullptr

◆ ckey

const char* QStringHashNode::ckey = nullptr

Definition at line 88 of file qstringhash_p.h.

Referenced by QStringHashNode(), cStrData(), QStringHash< T >::initializeNode(), and key().

◆ hash

◆ length

qint32 QStringHashNode::length = 0

◆ next

◆ strData

char16_t* QStringHashNode::strData

Definition at line 89 of file qstringhash_p.h.

Referenced by QStringHashNode(), QStringHash< T >::initializeNode(), key(), and utf16Data().

◆ symbolId

quint32 QStringHashNode::symbolId = 0

Definition at line 84 of file qstringhash_p.h.


The documentation for this class was generated from the following file: