|
PTLib
Version 2.18.8
|
Base string type for a file path. More...
#include <filepath.h>


Additional Inherited Members | |
Public Types inherited from PString | |
| typedef const char * | Initialiser |
| enum | ConversionType { Pascal, Basic, Literal, Signed, Unsigned, Decimal, Exponent, ScaleSI, Printf, NumConversionTypes } |
Public Types inherited from PObject | |
| enum | Comparison { LessThan = -1, EqualTo = 0, GreaterThan = 1 } |
Result of the comparison operation performed by the Compare() function. More... | |
Public Member Functions inherited from PString | |
| virtual PObject * | Clone () const |
| Make a complete duplicate of the string. More... | |
| virtual Comparison | Compare (const PObject &obj) const |
| Get the relative rank of the two strings. More... | |
| virtual void | PrintOn (ostream &strm) const |
| Output the string to the specified stream. More... | |
| virtual void | ReadFrom (istream &strm) |
| Input the string from the specified stream. More... | |
| virtual PINDEX | HashFunction () const |
| Calculate a hash value for use in sets and dictionaries. More... | |
| virtual PBoolean | SetSize (PINDEX newSize) |
| Set the size of the string. More... | |
| virtual PBoolean | IsEmpty () const |
| Determine if the string is empty. More... | |
| virtual PBoolean | MakeUnique () |
| Make this instance to be the one and only reference to the container contents. More... | |
| bool | MakeMinimumSize (PINDEX newLength=0) |
| Set the actual memory block array size to the minimum required to hold the current string contents. More... | |
| virtual PINDEX | GetLength () const |
| Determine the length of the null terminated string. More... | |
| PINDEX | Find (char ch, PINDEX offset=0) const |
| Locate the position within the string of the character. More... | |
| PINDEX | Find (const PString &str, PINDEX offset=0) const |
| Locate the position within the string of the substring. More... | |
| PINDEX | Find (const char *cstr, PINDEX offset=0) const |
| PINDEX | FindLast (char ch, PINDEX offset=P_MAX_INDEX) const |
| Locate the position of the last matching character. More... | |
| PINDEX | FindLast (const PString &str, PINDEX offset=P_MAX_INDEX) const |
| Locate the position of the last matching substring. More... | |
| PINDEX | FindLast (const char *cstr, PINDEX offset=P_MAX_INDEX) const |
| Locate the position of the last matching substring. More... | |
| PINDEX | FindOneOf (const PString &set, PINDEX offset=0) const |
| Locate the position of one of the characters in the set. More... | |
| PINDEX | FindOneOf (const char *cset, PINDEX offset=0) const |
| Locate the position of one of the characters in the set. More... | |
| PINDEX | FindSpan (const PString &set, PINDEX offset=0) const |
| Locate the position of character not in the set. More... | |
| PINDEX | FindSpan (const char *cset, PINDEX offset=0) const |
| Locate the position of character not in the set. More... | |
| PINDEX | FindRegEx (const PRegularExpression ®ex, PINDEX offset=0) const |
| Locate the position within the string of one of the regular expression. More... | |
| PBoolean | FindRegEx (const PRegularExpression ®ex, PINDEX &pos, PINDEX &len, PINDEX offset=0, PINDEX maxPos=P_MAX_INDEX) const |
| Locate the position within the string of one of the regular expression. More... | |
| PBoolean | MatchesRegEx (const PRegularExpression ®ex) const |
| Return true if the entire string matches the regular expression. More... | |
| PString & | Replace (const PString &target, const PString &subs, PBoolean all=false, PINDEX offset=0) |
| Locate the substring within the string and replace it with the specifed substring. More... | |
| PString & | Splice (const PString &str, PINDEX pos, PINDEX len=0) |
| Splice the string into the current string at the specified position. More... | |
| PString & | Splice (const char *cstr, PINDEX pos, PINDEX len=0) |
| Splice the string into the current string at the specified position. More... | |
| PString & | Delete (PINDEX start, PINDEX len) |
| Remove the substring from the string. More... | |
| PString | operator() (PINDEX start, PINDEX end) const |
| Extract a portion of the string into a new string. More... | |
| PString | Left (PINDEX len) const |
| Extract a portion of the string into a new string. More... | |
| PString | Right (PINDEX len) const |
| Extract a portion of the string into a new string. More... | |
| PString | Mid (PINDEX start, PINDEX len=P_MAX_INDEX) const |
| Extract a portion of the string into a new string. More... | |
| PString | LeftTrim () const |
| Create a string consisting of all characters from the source string except all spaces at the beginning of the string. More... | |
| PString | RightTrim () const |
| Create a string consisting of all characters from the source string except all spaces at the end of the string. More... | |
| PString | Trim () const |
| Create a string consisting of all characters from the source string except all spaces at the beginning and end of the string. More... | |
| PString | ToLower () const |
| Create a string consisting of all characters from the source string with all upper case letters converted to lower case. More... | |
| PString | ToUpper () const |
| Create a string consisting of all characters from the source string with all lower case letters converted to upper case. More... | |
| P_DECLARE_BITWISE_ENUM_EX (SplitOptions, 6,(SplitOnly, SplitTrimBefore, SplitTrimAfter, SplitDefaultToBefore, SplitDefaultToAfter, SplitBeforeNonEmpty, SplitAfterNonEmpty), SplitTrim=SplitTrimBefore|SplitTrimAfter, SplitNonEmpty=SplitBeforeNonEmpty|SplitAfterNonEmpty) | |
| Options for PString::Split() function. More... | |
| __inline bool | Split (const PString &delimiter, PString &before, PString &after, SplitOptions options=SplitTrim) const |
| Split the string into two substrings around delimiter. More... | |
| __inline bool | Split (char delimiter, PString &before, PString &after, SplitOptions options) const |
| __inline bool | Split (char delimiter, PString &before, PString &after, SplitOptions_Bits options) const |
| __inline bool | Split (const char *delimiter, PString &before, PString &after, SplitOptions options) const |
| __inline bool | Split (const char *delimiter, PString &before, PString &after, SplitOptions_Bits options) const |
| __inline bool | Split (char delimiter, PString &before, PString &after, bool trim) const |
| PStringArray | Tokenise (const PString &separators, PBoolean onePerSeparator=true) const |
| Split the string into an array of substrings. More... | |
| PStringArray | Tokenise (const char *cseparators, PBoolean onePerSeparator=true) const |
| Split the string into an array of substrings. More... | |
| PStringArray | Lines () const |
| Split the string into individual lines. More... | |
| PString () | |
| Construct an empty string. More... | |
| PString (const PString &str) | |
| Create a new reference to the specified string. More... | |
| PString (const PCharArray &buf) | |
| Create a new reference to the specified buffer. More... | |
| PString (const PBYTEArray &buf) | |
| Create a new string based on the BYTE array. More... | |
| PString (const std::string &str) | |
| Create a new string from the specified std::string. More... | |
| PString (const char *cstr) | |
| Create a string from the C string array. More... | |
| PString (const char *cstr, PINDEX len) | |
| Create a string from the wchar_t string array. More... | |
| PString (char ch) | |
| Create a string from the single character. More... | |
| PString (short n) | |
| Create a string from the integer type. More... | |
| PString (unsigned short n) | |
| Create a string from the integer type. More... | |
| PString (int n) | |
| Create a string from the integer type. More... | |
| PString (unsigned int n) | |
| Create a string from the integer type. More... | |
| PString (long n) | |
| Create a string from the integer type. More... | |
| PString (unsigned long n) | |
| Create a string from the integer type. More... | |
| PString (ConversionType type, const char *str,...) | |
| PString (ConversionType type, unsigned long value, unsigned param=10) | |
| PString (ConversionType type, signed long value, unsigned param=10) | |
| PString (ConversionType type, unsigned int value, unsigned param=10) | |
| PString (ConversionType type, signed int value, unsigned param=10) | |
| PString (ConversionType type, unsigned short value, unsigned param=10) | |
| PString (ConversionType type, signed short value, unsigned param=10) | |
| PString (ConversionType type, unsigned char value, unsigned param=10) | |
| PString (ConversionType type, signed char value, unsigned param=10) | |
| PString (ConversionType type, double value, unsigned places) | |
| PString & | operator= (const PString &str) |
| Assign the string to the current object. More... | |
| PString & | operator= (const std::string &str) |
| Assign the string to the current object. More... | |
| PString & | operator= (const char *cstr) |
| Assign the C string to the current object. More... | |
| PString & | operator= (char ch) |
| Assign the character to the current object. More... | |
| PString & | operator= (short n) |
| Assign a string from the integer type. More... | |
| PString & | operator= (unsigned short n) |
| Assign a string from the integer type. More... | |
| PString & | operator= (int n) |
| Assign a string from the integer type. More... | |
| PString & | operator= (unsigned int n) |
| Assign a string from the integer type. More... | |
| PString & | operator= (long n) |
| Assign a string from the integer type. More... | |
| PString & | operator= (unsigned long n) |
| Assign a string from the integer type. More... | |
| virtual PString & | MakeEmpty () |
| Make the current string empty. More... | |
| PString | operator+ (const PString &str) const |
| Concatenate two strings to produce a third. More... | |
| PString | operator+ (const char *cstr) const |
| Concatenate a C string to a PString to produce a third. More... | |
| PString | operator+ (char ch) const |
| Concatenate a single character to a PString to produce a third. More... | |
| PString & | operator+= (const PString &str) |
| Concatenate a string to another string, modifiying that string. More... | |
| PString & | operator+= (const char *cstr) |
| Concatenate a C string to a PString, modifiying that string. More... | |
| PString & | operator+= (char ch) |
| Concatenate a single character to a PString. More... | |
| PString | operator& (const PString &str) const |
| Concatenate a PString to another PString to produce a third. More... | |
| PString | operator& (const char *cstr) const |
| Concatenate a C string to a PString to produce a third. More... | |
| PString | operator& (char ch) const |
| Concatenate a single character to a PString to produce a third. More... | |
| PString & | operator&= (const PString &str) |
| Concatenate a PString to a PString, modifiying that string. More... | |
| PString & | operator&= (const char *cstr) |
| Concatenate a C string to a PString, modifiying that string. More... | |
| PString & | operator&= (char ch) |
| Concatenate a character to a PString, modifiying that string. More... | |
| bool | operator*= (const PString &str) const |
| Compare two strings using case insensitive comparison. More... | |
| bool | operator== (const PString &str) const |
Compare two strings using the PObject::Compare() function. More... | |
| bool | operator!= (const PString &str) const |
Compare two strings using the PObject::Compare() function. More... | |
| bool | operator< (const PString &str) const |
Compare two strings using the PObject::Compare() function. More... | |
| bool | operator> (const PString &str) const |
Compare two strings using the PObject::Compare() function. More... | |
| bool | operator<= (const PString &str) const |
Compare two strings using the PObject::Compare() function. More... | |
| bool | operator>= (const PString &str) const |
Compare two strings using the PObject::Compare() function. More... | |
| bool | operator*= (const char *cstr) const |
| Compare a PString to a C string using a case insensitive compare function. More... | |
| bool | operator== (const char *cstr) const |
Compare a PString to a C string using the Compare() function. More... | |
| bool | operator!= (const char *cstr) const |
Compare a PString to a C string using the PObject::Compare() function. More... | |
| bool | operator< (const char *cstr) const |
Compare a PString to a C string using the PObject::Compare() function. More... | |
| bool | operator> (const char *cstr) const |
Compare a PString to a C string using the PObject::Compare() function. More... | |
| bool | operator<= (const char *cstr) const |
Compare a PString to a C string using the PObject::Compare() function. More... | |
| bool | operator>= (const char *cstr) const |
Compare a PString to a C string using the PObject::Compare() function. More... | |
| Comparison | NumCompare (const PString &str, PINDEX count=P_MAX_INDEX, PINDEX offset=0) const |
| Compare a string against a substring of the object. More... | |
| Comparison | NumCompare (const char *cstr, PINDEX count=P_MAX_INDEX, PINDEX offset=0) const |
| Compare a string against a substring of the object. More... | |
| PString & | sprintf (const char *cfmt,...) |
| Concatenate a formatted output to the string. More... | |
| PString & | vsprintf (const PString &fmt, va_list args) |
| Concatenate a formatted output to the string. More... | |
| PString & | vsprintf (const char *cfmt, va_list args) |
| Concatenate a formatted output to the string. More... | |
| template<typename T > | |
| __inline T | As (T t=T()) const |
| Convert the string to any type that can be converted using a stream. More... | |
| long | AsInteger (unsigned base=0) const |
| Convert the string to an integer value using the specified number base. More... | |
| DWORD | AsUnsigned (unsigned base=0) const |
| Convert the string to an integer value using the specified number base. More... | |
| int64_t | AsInteger64 (unsigned base=0) const |
| Convert the string to an integer value using the specified number base. More... | |
| __inline PInt64 | AsInt64 (unsigned base=0) const |
| uint64_t | AsUnsigned64 (unsigned base=0) const |
| Convert the string to an integer value using the specified number base. More... | |
| double | AsReal () const |
| Convert the string to a floating point number. More... | |
| PBYTEArray | ToPascal () const |
| Convert a standard null terminated string to a "pascal" style string. More... | |
| PString | ToLiteral () const |
| Convert the string to C literal string format. More... | |
| PString | FromLiteral (PINDEX &offset) const |
| Parse a C literal string format as for PString::ToLiteral(). More... | |
| operator const unsigned char * () const | |
| Get the internal buffer as a pointer to unsigned characters. More... | |
| operator std::string () const | |
| Cast the PString to a std::string. More... | |
| char * | GetPointerAndSetLength (PINDEX len) |
| Get a pointer to the buffer and set the length of the string. More... | |
| virtual const char * | GetPointer (PINDEX=0) const |
| Get a const pointer to the buffer contents This function overrides the ancestor function that returns a char *. More... | |
| __inline std::string::size_type | size () const |
| __inline std::string::size_type | length () const |
| __inline std::string::size_type | capacity () const |
| __inline bool | empty () const |
| __inline void | clear () |
| __inline const char * | c_str () const |
| __inline char * | data () |
| __inline void | push_back (char ch) |
| __inline PString & | append (std::string::size_type count, char ch) |
| __inline PString & | append (const char *s) |
| __inline PString & | append (const std::string &s) |
| __inline PString & | insert (std::string::size_type index, std::string::size_type count, char ch) |
| __inline PString & | insert (std::string::size_type index, const char *s) |
| __inline PString & | insert (std::string::size_type index, const std::string &s) |
| __inline PString & | erase (std::string::size_type index=0, std::string::size_type count=std::string::npos) |
| __inline PString & | replace (std::string::size_type pos, std::string::size_type count, const char *s) |
| __inline PString & | replace (std::string::size_type pos, std::string::size_type count, const std::string &s) |
| __inline std::string | substr (std::string::size_type pos=0, std::string::size_type count=std::string::npos) const |
| __inline std::string::size_type | find (char c, std::string::size_type pos=0) const |
| __inline std::string::size_type | find (const char *s, std::string::size_type pos=0) const |
| __inline std::string::size_type | find (const std::string &s, std::string::size_type pos=0) const |
| __inline std::string::size_type | rfind (char c, std::string::size_type pos=0) const |
| __inline std::string::size_type | rfind (const char *s, std::string::size_type pos=0) const |
| __inline std::string::size_type | rfind (const std::string &s, std::string::size_type pos=0) const |
| __inline std::string::size_type | find_first_of (const char *s, std::string::size_type pos=0) const |
| __inline std::string::size_type | find_first_of (const std::string &s, std::string::size_type pos=0) const |
| __inline std::string::size_type | find_first_not_of (const char *s, std::string::size_type pos=0) const |
| __inline std::string::size_type | find_first_not_of (const std::string &s, std::string::size_type pos=0) const |
Public Member Functions inherited from PCharArray | |
| PCharArray (PINDEX initialSize=0) | |
| Construct a new dynamic array of char. More... | |
| PCharArray (char const *buffer, PINDEX length, PBoolean dynamic=true) | |
| Construct a new dynamic array of char. More... | |
| PCharArray (PContainerReference &reference_) | |
| virtual void | PrintOn (ostream &strm) const |
| Print the array. More... | |
| virtual void | ReadFrom (istream &strm) |
| Read the array. More... | |
Public Member Functions inherited from PBaseArray< char > | |
| PBaseArray (PINDEX initialSize=0) | |
| Construct a new dynamic array of elements of the specified type. More... | |
| PBaseArray (charconst *buffer, PINDEX length, PBoolean dynamic=true) | |
| Construct a new dynamic array of elements of the specified type. More... | |
| PBoolean | SetAt (PINDEX index, charval) |
| Set the specific element in the array. More... | |
| char | GetAt (PINDEX index) const |
| Get a value from the array. More... | |
| void | Attach (const char *buffer, PINDEX bufferSize) |
| Attach a pointer to a static block to the base array type. More... | |
| char * | GetPointer (PINDEX minSize=0) |
| Get a pointer to the internal array and assure that it is of at least the specified size. More... | |
| char | operator[] (PINDEX index) const |
| Get a value from the array. More... | |
| char & | operator[] (PINDEX index) |
| Get a reference to value from the array. More... | |
| operator charconst * () const | |
| Get a pointer to the internal array. More... | |
| PBoolean | Concatenate (const PBaseArray &array) |
| Concatenate one array to the end of this array. More... | |
Public Member Functions inherited from PAbstractArray | |
| PAbstractArray (PINDEX elementSizeInBytes, PINDEX initialSize=0) | |
Create a new dynamic array of initalSize elements of elementSizeInBytes bytes each. More... | |
| PAbstractArray (PINDEX elementSizeInBytes, const void *buffer, PINDEX bufferSizeInElements, PBoolean dynamicAllocation) | |
Create a new dynamic array of bufferSizeInElements elements of elementSizeInBytes bytes each. More... | |
| void | Attach (const void *buffer, PINDEX bufferSize) |
| Attach a pointer to a static block to the base array type. More... | |
| void * | GetPointer (PINDEX minSize=1) |
| Get a pointer to the internal array and assure that it is of at least the specified size. More... | |
| const void * | GetPointer () const |
| PBoolean | Concatenate (const PAbstractArray &array) |
| Concatenate one array to the end of this array. More... | |
Public Member Functions inherited from PContainer | |
| PContainer (PINDEX initialSize=0) | |
| Create a new unique container. More... | |
| PContainer (const PContainer &cont) | |
| Create a new refernce to container. More... | |
| PContainer & | operator= (const PContainer &cont) |
| Assign one container reference to another. More... | |
| virtual | ~PContainer () |
| Destroy the container class. More... | |
| virtual PINDEX | GetSize () const |
| Get the current size of the container. More... | |
| __inline size_t | size () const |
| PBoolean | SetMinSize (PINDEX minSize) |
| Set the minimum size of container. More... | |
| __inline bool | empty () const |
| PBoolean | IsUnique () const |
| Determine if container is unique reference. More... | |
Public Member Functions inherited from PObject | |
| __inline unsigned | GetTraceContextIdentifier () const |
| Get PTRACE context identifier. More... | |
| __inline void | SetTraceContextIdentifier (unsigned id) |
| __inline void | SetTraceContextIdentifier (const PObject &obj) |
| __inline void | SetTraceContextIdentifier (const PObject *obj) |
| __inline void | CopyTraceContextIdentifier (PObject &obj) const |
| __inline void | CopyTraceContextIdentifier (PObject *obj) const |
| virtual | ~PObject () |
| __inline const char * | GetClass () const |
| __inline bool | IsClass (const char *name) const |
| __inline const PObject * | PTraceObjectInstance () const |
| template<class CLS > | |
| CLS * | CloneAs () const |
| As for Clone() but converts to specified type. More... | |
| virtual Comparison | CompareObjectMemoryDirect (const PObject &obj) const |
| Determine the byte wise comparison of two objects. More... | |
| bool | operator== (const PObject &obj) const |
| Compare the two objects. More... | |
| bool | operator!= (const PObject &obj) const |
| Compare the two objects. More... | |
| bool | operator< (const PObject &obj) const |
| Compare the two objects. More... | |
| bool | operator> (const PObject &obj) const |
| Compare the two objects. More... | |
| bool | operator<= (const PObject &obj) const |
| Compare the two objects. More... | |
| bool | operator>= (const PObject &obj) const |
| Compare the two objects. More... | |
Static Public Member Functions inherited from PString | |
| static const PString & | Empty () |
| Return an empty string. More... | |
Static Public Member Functions inherited from PObject | |
| static __inline void | CopyTraceContextIdentifier (PObject &to, const PObject &from) |
| static __inline void | CopyTraceContextIdentifier (PObject &to, const PObject *from) |
| static __inline void | CopyTraceContextIdentifier (PObject *to, const PObject &from) |
| static __inline void | CopyTraceContextIdentifier (PObject *to, const PObject *from) |
| static __inline const char * | Class () |
| static __inline const PObject * | PTraceObjectInstance (const char *) |
| static __inline const PObject * | PTraceObjectInstance (const PObject *obj) |
| template<typename T > | |
| static Comparison | Compare2 (T v1, T v2) |
| Compare two types, returning Comparison type. More... | |
| static Comparison | InternalCompareObjectMemoryDirect (const PObject *obj1, const PObject *obj2, PINDEX size) |
| Internal function caled from CompareObjectMemoryDirect() More... | |
Protected Member Functions inherited from PString | |
| virtual Comparison | InternalCompare (PINDEX offset, PINDEX length, const char *cstr) const |
| virtual int | internal_strcmp (const char *s1, const char *s2) const |
| virtual int | internal_strncmp (const char *s1, const char *s2, size_t n) const |
| bool | InternalSplit (const PString &delimiter, PString &before, PString &after, SplitOptions_Bits options) const |
| PString (int dummy, const PString *str) | |
| virtual void | AssignContents (const PContainer &) |
| Copy the container contents. More... | |
| PString (PContainerReference &reference_, PINDEX len) | |
Protected Member Functions inherited from PBaseArray< char > | |
| PBaseArray (PContainerReference &reference_) | |
| virtual void | PrintElementOn (ostream &stream, PINDEX index) const |
Protected Member Functions inherited from PAbstractArray | |
| PBoolean | InternalSetSize (PINDEX newSize, PBoolean force) |
| virtual void | PrintElementOn (ostream &stream, PINDEX index) const |
| virtual void | ReadElementFrom (istream &stream, PINDEX index) |
| PAbstractArray (PContainerReference &reference, PINDEX elementSizeInBytes) | |
Protected Member Functions inherited from PContainer | |
| PContainer (int dummy, const PContainer *cont) | |
| Constructor used in support of the Clone() function. More... | |
| PContainer (PContainerReference &reference) | |
| Construct using static PContainerReference. More... | |
| virtual void | DestroyContents ()=0 |
| Destroy the container contents. More... | |
| void | CopyContents (const PContainer &c) |
| Copy the container contents. More... | |
| void | CloneContents (const PContainer *src) |
| Create a duplicate of the container contents. More... | |
| void | Destruct () |
| Internal function called from container destructors. More... | |
| virtual void | DestroyReference () |
| Destroy the PContainerReference instance. More... | |
Protected Member Functions inherited from PObject | |
| PObject () | |
| Constructor for PObject, made protected so cannot ever create one on its own. More... | |
Protected Attributes inherited from PString | |
| PINDEX | m_length |
Protected Attributes inherited from PAbstractArray | |
| PINDEX | elementSize |
| Size of an element in bytes. More... | |
| char * | theArray |
| Pointer to the allocated block of memory. More... | |
| PBoolean | allocatedDynamically |
| Flag indicating the array was allocated on the heap. More... | |
Protected Attributes inherited from PContainer | |
| PContainerReference * | reference |
Protected Attributes inherited from PObject | |
| unsigned | m_traceContextIdentifier |
Base string type for a file path.
For platforms where filenames are case significant (eg Unix) this class is a synonym for PString. If it is for a platform where case is not significant (eg Win32, Mac) then this is a synonym for PCaselessString.