#include <pstring.h>
Construction | |
PStringArray (PINDEX count, char const *const *strarr, BOOL caseless=FALSE) | |
PStringArray (const PString &str) | |
PStringArray (const PStringList &list) | |
PStringArray (const PSortedStringList &list) | |
PStringArray (const std::vector< PString > &vec) | |
PStringArray (const std::vector< std::string > &vec) | |
template<typename stlContainer> | |
static PStringArray | container (const stlContainer &vec) |
Public Member Functions | |
Overrides from class PObject | |
virtual void | ReadFrom (istream &strm) |
New functions for class | |
PINDEX | GetStringsIndex (const PString &str) const |
PString | operator[] (PINDEX index) const |
PString & | operator[] (PINDEX index) |
PINDEX | AppendString (const PString &str) |
PStringArray & | operator+= (const PStringArray &array) |
PStringArray & | operator+= (const PString &str) |
PStringArray | operator+ (const PStringArray &array) |
PStringArray | operator+ (const PString &str) |
char ** | ToCharArray (PCharArray *storage=NULL) const |
In addition some addition functions are added that take a const PString# reference instead of a pointer as most standard collection functions do. This is more convenient for when string expressions are used as parameters to function in the collection.
See the PAbstractArray# and PArray# classes and PDECLARE_ARRAY# macro for more information.
PStringArray::PStringArray | ( | PINDEX | count, | |
char const *const * | strarr, | |||
BOOL | caseless = FALSE | |||
) |
Create a PStringArray from the array of C strings. If count is P_MAX_INDEX then strarr is assumed to point to an array of strings where the last pointer is NULL.
count | Count of strings in array |
strarr | Array of C strings |
caseless | New strings are to be PCaselessStrings |
PStringArray::PStringArray | ( | const PString & | str | ) |
Create a PStringArray of length one from the single string.
str | Single string to convert to an array of one. |
PStringArray::PStringArray | ( | const PStringList & | list | ) |
Create a PStringArray from the list of strings.
list | List of strings to convert to array. |
PStringArray::PStringArray | ( | const PSortedStringList & | list | ) |
Create a PStringArray from the sorted list strings.
list | List of strings to convert to array. |
PStringArray::PStringArray | ( | const std::vector< PString > & | vec | ) | [inline] |
Create a PStringArray from a vector of PStrings
PStringArray::PStringArray | ( | const std::vector< std::string > & | vec | ) | [inline] |
Create a PStringArray from a vector of std::string
static PStringArray PStringArray::container | ( | const stlContainer & | vec | ) | [inline, static] |
Create a PStringArray from an STL container
virtual void PStringArray::ReadFrom | ( | istream & | strm | ) | [virtual] |
Input the contents of the object from the stream. This is primarily used by the standard operator>># function.
The default behaviour reads '
' separated strings until !strm.good().
PINLINE PINDEX PStringArray::GetStringsIndex | ( | const PString & | str | ) | const |
As for GetValuesIndex()# but takes a PString argument so that literals will be automatically converted.
str | String to search for index of |
PString PStringArray::operator[] | ( | PINDEX | index | ) | const |
index | Index position in the collection of the object. |
PString& PStringArray::operator[] | ( | PINDEX | index | ) |
Retrieve a reference to the object in the array. If there was not an object at that ordinal position or the index was beyond the size of the array then the function will create a new one.
index | Index position in the collection of the object. |
PINLINE PINDEX PStringArray::AppendString | ( | const PString & | str | ) |
Append a string to the array
str | String to append. |
PStringArray& PStringArray::operator+= | ( | const PStringArray & | array | ) |
Concatenate a PString or PStringArray to the array
PINLINE PStringArray & PStringArray::operator+= | ( | const PString & | str | ) |
PINLINE PStringArray PStringArray::operator+ | ( | const PStringArray & | array | ) |
Create a new PStringArray, and add PString or PStringArray to it a new PStringArray
PINLINE PStringArray PStringArray::operator+ | ( | const PString & | str | ) |
char** PStringArray::ToCharArray | ( | PCharArray * | storage = NULL |
) | const |
Create an array of C strings. If storage is NULL then this returns a single pointer that may be disposed of using free(). Note that each of the strings are part of the same memory allocation so only one free() is required.
If storage is not null then that is used to allocate the memory.