RStringPool Class Reference

class RStringPool

The string pool handle object. A string pool can have several distinct handles associated with it, each associated with a different pre-loaded table. The difference between them is that creating a string from an enum will interpret the enum as an offset into the relevant pre-loaded table String pool handle.

A string pool can have several distinct handles associated with it, each associated with a different pre-loaded table. Creating a string from an enum value interprets the value as an offset into the relevant pre-loaded table.

Public Member Functions
RStringPool()
IMPORT_C voidClose()
IMPORT_C RStringFOpenFStringL(const TDesC8 &)
IMPORT_C voidOpenL()
IMPORT_C voidOpenL(const TStringTable &)
IMPORT_C voidOpenL(const TStringTable &, MStringPoolCloseCallBack &)
IMPORT_C RStringOpenStringL(const TDesC8 &)
IMPORT_C RStringString(RStringToken)
IMPORT_C RStringString(TInt, const TStringTable &)
IMPORT_C RStringFStringF(RStringTokenF)
IMPORT_C RStringFStringF(TInt, const TStringTable &)
Private Attributes
CStringPoolImplementation *iImplementation

Constructor & Destructor Documentation

RStringPool()

RStringPool()[inline]

Default constructor.

Member Functions Documentation

Close()

IMPORT_C voidClose()

Closes the string pool table.

This invalidates all other handles to the table.

OpenFStringL(const TDesC8 &)

IMPORT_C RStringFOpenFStringL(const TDesC8 &aString)const

Creates an RStringF using the current string pool.

The string is opened as case-insensitive.

leave
KErrNoMemory Not enough memory to open the string

Parameters

const TDesC8 & aStringThe value of the string.

OpenL()

IMPORT_C voidOpenL()

Implementation of RStringPool class Creates an initialised string pool with no pre-loaded string tables.

leave
KErrNoMemory Not enough memory to open the pool

OpenL(const TStringTable &)

IMPORT_C voidOpenL(const TStringTable &aTable)

Creates an initialised string pool with a pre-loaded string table.

leave
KErrNoMemory Not enough memory to open the pool

Parameters

const TStringTable & aTableThe pre-loaded string table.

OpenL(const TStringTable &, MStringPoolCloseCallBack &)

IMPORT_C voidOpenL(const TStringTable &aTable,
MStringPoolCloseCallBack &aCallBack
)

Creates an initialised string pool with a pre-loaded string table, and a string-pool-closing callback.

leave
KErrNoMemory Not enough memory to open the pool

Parameters

const TStringTable & aTableThe pre-loaded string table.
MStringPoolCloseCallBack & aCallBackCallback interface that is called when the string pool closes

OpenStringL(const TDesC8 &)

IMPORT_C RStringOpenStringL(const TDesC8 &aString)const

Creates an RString using the current string pool.

The string is opened as case-sensitive.

leave
KErrNoMemory Not enough memory to open the string

Parameters

const TDesC8 & aStringThe value of the string.

String(RStringToken)

IMPORT_C RStringString(RStringTokenaString)const

Creates an RString from the supplied RStringToken.

Parameters

RStringToken aStringThe string token

String(TInt, const TStringTable &)

IMPORT_C RStringString(TIntaIndex,
const TStringTable &aTable
)const

Gets a case-sensitive string specified by a string table enumeration value.

aIndex is interpreted as an offset into the handle's pre-loaded string table.

panic
EStringTableNotFound If the table supplied is not found. This panic is raised in debug builds only, in release mode the behaviour is undefined

Parameters

TInt aIndexThe string table enumeration value
const TStringTable & aTableThe string table from which to read the string

StringF(RStringTokenF)

IMPORT_C RStringFStringF(RStringTokenFaString)const

Creates a RStringF from the supplied RStringToken.

Parameters

RStringTokenF aStringThe value of the string

StringF(TInt, const TStringTable &)

IMPORT_C RStringFStringF(TIntaIndex,
const TStringTable &aTable
)const

Gets a case-insensitive string specified by a string table enumeration value.

Creates an RStringF from a string table enumeration value.

aIndex is interpreted as an offset into the handle's pre-loaded string table.

panic
EStringTableNotFound If the table supplied is not found. This panic is raised in debug builds only, in release mode the behaviour is undefined

Parameters

TInt aIndexThe string table enumeration value
const TStringTable & aTableThe string table from which to read the string

Member Data Documentation

CStringPoolImplementation * iImplementation

CStringPoolImplementation *iImplementation[private]