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
QV4::Heap::String Struct Reference

#include <qv4string_p.h>

+ Inheritance diagram for QV4::Heap::String:
+ Collaboration diagram for QV4::Heap::String:

Public Member Functions

const VTablevtable () const
 
void init (const QString &text)
 
void simplifyString () const
 
int length () const
 
std::size_t retainedTextSize () const
 
QString toQString () const
 
bool isEqualTo (const String *other) const
 
bool startsWithUpper () const
 
- Public Member Functions inherited from QV4::Heap::StringOrSymbol
void init ()
 
void init (QStringPrivate text)
 
void destroy ()
 
QStringPrivatetext () const
 
QString toQString () const
 
void createHashValue () const
 
unsigned hashValue () const
 
- Public Member Functions inherited from QV4::Heap::Base
voidoperator new (size_t)=delete
 
ReturnedValue asReturnedValue () const
 
void mark (QV4::MarkStack *markStack)
 
bool isMarked () const
 
void setMarkBit ()
 
bool inUse () const
 
voidoperator new (size_t, Managed *m)
 
voidoperator new (size_t, Base *m)
 
void operator delete (void *, Base *)
 
void init ()
 
void destroy ()
 
Q_ALWAYS_INLINE void _checkIsInitialized ()
 
Q_ALWAYS_INLINE void _checkIsDestroyed ()
 
Q_ALWAYS_INLINE void _setInitialized ()
 
Q_ALWAYS_INLINE void _setDestroyed ()
 

Static Public Member Functions

static void markObjects (Heap::Base *that, MarkStack *markStack)
 
- Static Public Member Functions inherited from QV4::Heap::StringOrSymbol
static void markObjects (Heap::Base *that, MarkStack *markStack)
 
- Static Public Member Functions inherited from QV4::Heap::Base
static void markObjects (Base *, MarkStack *)
 

Additional Inherited Members

- Public Types inherited from QV4::Heap::StringOrSymbol
enum  StringType {
  StringType_Symbol , StringType_Regular , StringType_ArrayIndex , StringType_Unknown ,
  StringType_AddedString , StringType_SubString , StringType_Complex = StringType_AddedString
}
 
- Public Attributes inherited from QV4::Heap::StringOrSymbol
struct { 
 
   unsigned char   data [sizeof(QStringPrivate)] 
 
textStorage 
 
PropertyKey identifier
 
uint subtype
 
uint stringHash
 
- Public Attributes inherited from QV4::Heap::Base
Pointer< InternalClass *, 0 > internalClass
 

Detailed Description

Definition at line 79 of file qv4string_p.h.

Member Function Documentation

◆ init()

void Heap::String::init ( const QString & text)

Definition at line 55 of file qv4string.cpp.

References QV4::Heap::StringOrSymbol::init(), and QV4::Heap::StringOrSymbol::StringType_Unknown.

+ Here is the call graph for this function:

◆ isEqualTo()

bool QV4::Heap::String::isEqualTo ( const String * other) const
inline

Definition at line 97 of file qv4string_p.h.

References other(), and Q_ASSERT.

Referenced by QV4::String::virtualIsEqualTo().

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

◆ length()

int QV4::Heap::String::length ( ) const
inline

Definition at line 132 of file qv4string_p.h.

References QV4::Heap::StringOrSymbol::StringType_AddedString, QV4::Heap::StringOrSymbol::subtype, and QV4::Heap::StringOrSymbol::text().

Referenced by QV4::Heap::ComplexString::init().

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

◆ markObjects()

void Heap::String::markObjects ( Heap::Base * that,
MarkStack * markStack )
static

Definition at line 22 of file qv4string.cpp.

References QV4::Heap::ComplexString::left, QV4::Heap::Base::mark(), QV4::Heap::StringOrSymbol::markObjects(), Q_ASSERT, QV4::Heap::ComplexString::right, and QV4::Heap::StringOrSymbol::subtype.

+ Here is the call graph for this function:

◆ retainedTextSize()

std::size_t QV4::Heap::String::retainedTextSize ( ) const
inline

Definition at line 89 of file qv4string_p.h.

References text.

◆ simplifyString()

void Heap::String::simplifyString ( ) const

Definition at line 132 of file qv4string.cpp.

References append(), ch, QString::data_ptr(), QV4::PropertyKey::invalid(), QV4::Heap::ComplexString::left, Q_ASSERT, QV4::Heap::ComplexString::right, text, and Qt::Uninitialized.

Referenced by startsWithUpper().

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

◆ startsWithUpper()

bool Heap::String::startsWithUpper ( ) const

Definition at line 150 of file qv4string.cpp.

References QString::data(), QV4::Heap::ComplexString::from, QV4::Heap::ComplexString::left, QV4::Heap::ComplexString::len, Q_ASSERT, simplifyString(), QString::size(), startsWithUpper(), str, QV4::Heap::StringOrSymbol::StringType_Complex, and QV4::Heap::StringOrSymbol::subtype.

Referenced by startsWithUpper().

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

◆ toQString()

QString QV4::Heap::String::toQString ( ) const
inline

Definition at line 92 of file qv4string_p.h.

Referenced by QV4::CppStackFrame::function(), QQmlPrivate::initValueLookup(), and QV4::String::toUInt().

+ Here is the caller graph for this function:

◆ vtable()

const VTable * QV4::Heap::String::vtable ( ) const
inline

Definition at line 82 of file qv4string_p.h.


The documentation for this struct was generated from the following files: