Edinburgh Speech Tools  2.1-release
EST_Pathname Class Reference

#include <include/EST_Pathname.h>

Inheritance diagram for EST_Pathname:
Collaboration diagram for EST_Pathname:

Public Member Functions

 EST_Pathname (void)
 
 EST_Pathname (EST_String s)
 
 EST_Pathname (const char *s)
 
EST_Pathname directory (void) const
 
EST_Pathname filename (void) const
 
EST_String basename (int remove_all=0) const
 
EST_String extension (void) const
 
EST_Pathname as_file (void) const
 
EST_Pathname as_directory (void) const
 
int is_absolute (void) const
 
int is_relative (void) const
 
int is_dirname (void) const
 
int is_filename (void) const
 
EST_TList< EST_Stringentries (int check_for_directories=1) const
 
EST_Pathnameoperator+= (const char *addition)
 
EST_Pathnameoperator+= (const EST_String addition)
 
EST_Pathnameoperator+= (const EST_Pathname addition)
 
EST_Pathname operator+ (const EST_String addition)
 
EST_Pathname operator+ (const char *addition)
 
int operator== (const EST_String thing)
 
int operator== (const char *thing)
 
int operator!= (const EST_String thing)
 
int operator!= (const char *thing)
 
- Public Member Functions inherited from EST_String
 EST_String (void)
 Construct an empty string. More...
 
 EST_String (const char *s)
 Construct from char *. More...
 
 EST_String (const char *s, int start_or_fill, ssize_t len)
 Construct from part of char * or fill with given character. More...
 
 EST_String (const char *s, size_t s_size, size_t start, ssize_t len)
 Construct from C string. More...
 
 EST_String (const EST_String &s, size_t start, ssize_t len)
 
 EST_String (const EST_String &s)
 
 ~EST_String ()
 Destructor. More...
 
size_t length (void) const
 Length of string ({not} length of underlying chunk) More...
 
int space (void) const
 Size of underlying chunk. More...
 
const char * str (void) const
 Get a const-pointer to the actual memory. More...
 
char * updatable_str (void)
 Get a writable pointer to the actual memory. More...
 
void make_updatable (void)
 
int Int (bool &ok) const
 Convert to an integer. More...
 
int Int (void) const
 
long Long (bool &ok) const
 Convert to a long. More...
 
long Long (void) const
 
float Float (bool &ok) const
 Convert to a float. More...
 
float Float (void) const
 
double Double (bool &ok) const
 Convert to a double. More...
 
double Double (void) const
 
EST_Stringignore_volatile (void) volatile
 
EST_String before (int pos, int len=0) const
 Part before position. More...
 
EST_String before (const char *s, int pos=0) const
 Part before first matching substring after pos. More...
 
EST_String before (const EST_String &s, int pos=0) const
 Part before first matching substring after pos. More...
 
EST_String before (EST_Regex &e, int pos=0) const
 Part before first match of regexp after pos. More...
 
EST_String at (int from, int len=0) const
 Return part at position. More...
 
EST_String at (const char *s, int pos=0) const
 Return part where substring found (not useful, included for completeness) More...
 
EST_String at (const EST_String &s, int pos=0) const
 Return part where substring found (not useful, included for completeness) More...
 
EST_String at (EST_Regex &e, int pos=0) const
 Return part matching regexp. More...
 
EST_String after (int pos, int len=1) const
 Part after pos+len. More...
 
EST_String after (const char *s, int pos=0) const
 Part after substring. More...
 
EST_String after (const EST_String &s, int pos=0) const
 Part after substring. More...
 
EST_String after (EST_Regex &e, int pos=0) const
 Part after match of regular expression. More...
 
size_t search (const char *s, size_t len, size_t &mlen, ssize_t pos=0) const
 Find a substring. More...
 
size_t search (const EST_String s, size_t &mlen, ssize_t pos=0) const
 Find a substring. More...
 
size_t search (EST_Regex &re, size_t &mlen, ssize_t pos=0, size_t *starts=NULL, size_t *ends=NULL) const
 Find a match of the regular expression. More...
 
size_t index (const char *s, ssize_t pos=0) const
 Position of substring (starting at pos) More...
 
size_t index (const EST_String &s, ssize_t pos=0) const
 Position of substring (starting at pos) More...
 
size_t index (EST_Regex &ex, ssize_t pos=0) const
 Position of match of regexp (starting at pos) More...
 
int contains (const char *s, ssize_t pos=-1) const
 Does it contain this substring? More...
 
int contains (const EST_String &s, ssize_t pos=-1) const
 Does it contain this substring? More...
 
int contains (const char c, ssize_t pos=-1) const
 Does it contain this character? More...
 
int contains (EST_Regex &ex, ssize_t pos=-1) const
 Does it contain a match for this regular expression? More...
 
int matches (const char *e, ssize_t pos=0) const
 Exactly match this string? More...
 
int matches (const EST_String &e, ssize_t pos=0) const
 Exactly match this string? More...
 
int matches (EST_Regex &e, ssize_t pos=0, size_t *starts=NULL, size_t *ends=NULL) const
 Exactly matches this regular expression, can return ends of sub-expressions. More...
 
int gsub (const char *os, const EST_String &s)
 Substitute one string for another. More...
 
int gsub (const char *os, const char *s)
 Substitute one string for another. More...
 
int gsub (const EST_String &os, const EST_String &s)
 Substitute one string for another. More...
 
int gsub (const EST_String &os, const char *s)
 Substitute one string for another. More...
 
int gsub (EST_Regex &ex, const EST_String &s)
 Substitute string for matches of regular expression. More...
 
int gsub (EST_Regex &ex, const char *s)
 Substitute string for matches of regular expression. More...
 
int gsub (EST_Regex &ex, int bracket_num)
 Substitute string for matches of regular expression. More...
 
int subst (EST_String source, size_t(&starts)[EST_Regex_max_subexpressions], size_t(&ends)[EST_Regex_max_subexpressions])
 Substitute the result of a match into a string. More...
 
size_t freq (const char *s) const
 Number of occurrences of substring. More...
 
size_t freq (const EST_String &s) const
 Number of occurrences of substring. More...
 
size_t freq (EST_Regex &s) const
 Number of matches of regular expression. More...
 
EST_String quote (const char quotec) const
 Return the string in quotes with internal quotes protected. More...
 
EST_String quote_if_needed (const char quotec) const
 Return in quotes if there is something to protect (e.g. spaces) More...
 
EST_String unquote (const char quotec) const
 Remove quotes and unprotect internal quotes. More...
 
EST_String unquote_if_needed (const char quotec) const
 Remove quotes if any. More...
 
char operator() (int i) const
 Function style access to constant strings. More...
 
char & operator[] (int i)
 Array style access to writable strings. More...
 
 operator const char * () const
 Cast to const char * by simply giving access to pointer. More...
 
 operator const char * ()
 
 operator char * ()
 Cast to char *, may involve copying. More...
 
EST_Stringoperator+= (const char *b)
 Add C string to end of EST_String. More...
 
EST_Stringoperator+= (const EST_String b)
 Add EST_String to end of EST_String. More...
 
EST_Stringoperator= (const char *str)
 Assign C string to EST_String. More...
 
EST_Stringoperator= (const char c)
 Assign single character to EST_String. More...
 
EST_Stringoperator= (const EST_String &s)
 Assign EST_String to EST_String. More...
 

Static Public Member Functions

static EST_Pathname construct (EST_Pathname dir, EST_String basename, EST_String extension)
 
static EST_Pathname construct (EST_Pathname dir, EST_String filename)
 
static EST_Pathname append (EST_Pathname directory, EST_Pathname addition)
 
static void divide (EST_Pathname path, int at, EST_Pathname &start, EST_Pathname &end)
 
- Static Public Member Functions inherited from EST_String
static EST_String FromChar (const char c)
 Build string from a single character. More...
 
static EST_String Number (int i, int base=10)
 Build string from an integer. More...
 
static EST_String Number (long i, int base=10)
 Build string from a long integer. More...
 
static EST_String Number (double d)
 Build string from a double. More...
 
static EST_String Number (float f)
 Build string from a float. More...
 
static EST_String cat (const EST_String s1, const EST_String s2=Empty, const EST_String s3=Empty, const EST_String s4=Empty, const EST_String s5=Empty, const EST_String s6=Empty, const EST_String s7=Empty, const EST_String s8=Empty, const EST_String s9=Empty)
 

Friends

EST_Pathname operator+ (const EST_Pathname p, const EST_Pathname addition)
 
EST_Pathname operator+ (const char *p, const EST_Pathname addition)
 

Additional Inherited Members

- Public Types inherited from EST_String
typedef size_t EST_string_size
 Type of string size field. More...
 
- Static Public Attributes inherited from EST_String
static const char * version = "CSTR String Class " STRING_VERSION " " STRING_DATE
 Global version string. More...
 
static const EST_String Empty
 Constant empty string. More...
 

Detailed Description

Class representing pathnames. Makes common filename manipulations available as methods. Different implementations are provided for different systems.

Definition at line 44 of file EST_Pathname.h.

Constructor & Destructor Documentation

EST_Pathname::EST_Pathname ( void  )
inline

Definition at line 51 of file EST_Pathname.h.

EST_Pathname::EST_Pathname ( EST_String  s)
inline

Definition at line 52 of file EST_Pathname.h.

EST_Pathname::EST_Pathname ( const char *  s)
inline

Definition at line 53 of file EST_Pathname.h.

Member Function Documentation

EST_Pathname EST_Pathname::construct ( EST_Pathname  dir,
EST_String  basename,
EST_String  extension 
)
static

Definition at line 110 of file EST_Pathname_unix.cc.

EST_Pathname EST_Pathname::construct ( EST_Pathname  dir,
EST_String  filename 
)
static

Definition at line 101 of file EST_Pathname_unix.cc.

EST_Pathname EST_Pathname::directory ( void  ) const

Definition at line 63 of file EST_Pathname_unix.cc.

EST_Pathname EST_Pathname::filename ( void  ) const

Definition at line 187 of file EST_Pathname_unix.cc.

EST_String EST_Pathname::basename ( int  remove_all = 0) const

Definition at line 196 of file EST_Pathname_unix.cc.

EST_String EST_Pathname::extension ( void  ) const

Definition at line 173 of file EST_Pathname_unix.cc.

EST_Pathname EST_Pathname::as_file ( void  ) const

Definition at line 75 of file EST_Pathname_unix.cc.

EST_Pathname EST_Pathname::as_directory ( void  ) const

Definition at line 86 of file EST_Pathname_unix.cc.

int EST_Pathname::is_absolute ( void  ) const

Definition at line 53 of file EST_Pathname_unix.cc.

int EST_Pathname::is_relative ( void  ) const
inline

Definition at line 68 of file EST_Pathname.h.

int EST_Pathname::is_dirname ( void  ) const

Definition at line 58 of file EST_Pathname_unix.cc.

int EST_Pathname::is_filename ( void  ) const
inline

Definition at line 70 of file EST_Pathname.h.

EST_TList< EST_String > EST_Pathname::entries ( int  check_for_directories = 1) const

Definition at line 118 of file EST_Pathname_unix.cc.

EST_Pathname EST_Pathname::append ( EST_Pathname  directory,
EST_Pathname  addition 
)
static

Definition at line 158 of file EST_Pathname_unix.cc.

static void EST_Pathname::divide ( EST_Pathname  path,
int  at,
EST_Pathname start,
EST_Pathname end 
)
static
EST_Pathname& EST_Pathname::operator+= ( const char *  addition)
inline

Definition at line 82 of file EST_Pathname.h.

EST_Pathname& EST_Pathname::operator+= ( const EST_String  addition)
inline

Definition at line 84 of file EST_Pathname.h.

EST_Pathname& EST_Pathname::operator+= ( const EST_Pathname  addition)
inline

Definition at line 86 of file EST_Pathname.h.

EST_Pathname EST_Pathname::operator+ ( const EST_String  addition)
inline

Definition at line 89 of file EST_Pathname.h.

EST_Pathname EST_Pathname::operator+ ( const char *  addition)
inline

Definition at line 91 of file EST_Pathname.h.

int EST_Pathname::operator== ( const EST_String  thing)
inline

Definition at line 94 of file EST_Pathname.h.

int EST_Pathname::operator== ( const char *  thing)
inline

Definition at line 96 of file EST_Pathname.h.

int EST_Pathname::operator!= ( const EST_String  thing)
inline

Definition at line 98 of file EST_Pathname.h.

int EST_Pathname::operator!= ( const char *  thing)
inline

Definition at line 100 of file EST_Pathname.h.

Friends And Related Function Documentation

EST_Pathname operator+ ( const EST_Pathname  p,
const EST_Pathname  addition 
)
friend

Definition at line 145 of file EST_Pathname_unix.cc.

EST_Pathname operator+ ( const char *  p,
const EST_Pathname  addition 
)
friend

Definition at line 148 of file EST_Pathname_unix.cc.


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